Skip to content

Desktop connection SaaS: config, billing, team support#5768

Merged
EthanHealy01 merged 15 commits intomainfrom
saas_plan_page
Feb 25, 2026
Merged

Desktop connection SaaS: config, billing, team support#5768
EthanHealy01 merged 15 commits intomainfrom
saas_plan_page

Conversation

@ConnorYoh
Copy link
Copy Markdown
Member

No description provided.

@dosubot dosubot bot added size:XL This PR changes 500-999 lines ignoring generated files. enhancement New feature or request labels Feb 20, 2026
@stirlingbot stirlingbot bot added Java Pull requests that update Java code Front End Issues or pull requests related to front-end development Back End Issues related to back-end development Translation and removed enhancement New feature or request labels Feb 20, 2026
@stirlingbot
Copy link
Copy Markdown
Contributor

stirlingbot bot commented Feb 20, 2026

🌐 TOML Translation Verification Summary

🔄 Reference Branch: pr-branch

📃 File Check: en-GB/translation.toml

  1. Test Status:Passed
  2. Test Status:Passed
  3. Test Status:Passed

✅ Overall Check Status: Success

Thanks @ConnorYoh for your help in keeping the translations up to date.

@stirlingbot stirlingbot bot added the Github label Feb 23, 2026
@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Feb 23, 2026

📦 Tauri Desktop Builds Ready!

The desktop applications have been built and are ready for testing.

Download Artifacts:

🍎 macOS ARM64: Download Stirling-PDF-macos-aarch64 (.dmg) - 206.5 MB
🪟 Windows x64: Download Stirling-PDF-windows-x86_64 (.exe, .msi) - 226.6 MB
🍎 macOS Intel: Download Stirling-PDF-macos-x86_64 (.dmg) - 208.0 MB
🐧 Linux x64: Download Stirling-PDF-linux-x86_64 (.deb, .AppImage) - 211.7 MB


Built from commit 791a41b
Artifacts expire in 7 days

reecebrowne
reecebrowne previously approved these changes Feb 25, 2026
jbrunton96
jbrunton96 previously approved these changes Feb 25, 2026
Copy link
Copy Markdown
Contributor

@jbrunton96 jbrunton96 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is great work Connor, nice one 👍

@jbrunton96 jbrunton96 dismissed stale reviews from reecebrowne and themself via 933b2c0 February 25, 2026 13:47
@EthanHealy01 EthanHealy01 merged commit 5c39ace into main Feb 25, 2026
47 of 63 checks passed
@EthanHealy01 EthanHealy01 deleted the saas_plan_page branch February 25, 2026 14:13
@stirlingbot
Copy link
Copy Markdown
Contributor

stirlingbot bot commented Feb 25, 2026

🚀 V2 Auto-Deployment Complete!

Your V2 PR with embedded architecture has been deployed!

🔗 Direct Test URL (non-SSL) http://23.22.230.180:5768

🔐 Secure HTTPS URL: https://5768.ssl.stirlingpdf.cloud

This deployment will be automatically cleaned up when the PR is closed.

🔄 Auto-deployed for approved V2 contributors.

renovate bot added a commit to sdwilsh/ansible-playbooks that referenced this pull request Mar 4, 2026
… docker tag to v2

##### [\`2.6.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.6.0)

In this update, we have drastically improved Stirling PDFs memory usage and startup performance in our testing you should see around a 30% reduction in both idle usage and startup speed
We have also dramatically reduced the filesize of the docker by 30-40%

Breaking updates:
No longer supporting JDK 17, we have moved to JDK 21-25 and are recommending all jar installs to upgrade to JDK 25 for best performance

Other updates

- Desktop now supports running non installed tools by optionally connecting to Stirling cloud server IF a user chooses to and is already running via login to cloud
- Several dependencies have been updated
- Security patches

Bug fixes

- Health check failing under certain auth scenarios
- Crop not working for desktop

#### What's Changed

##### Enhancements

- feat(docker): update base images to Java 25, Spring 4, Jackson 3, Gradle 9 and optimize JVM options (Project Lilliput) by [@balazs-szucs](https://github.com/balazs-szucs) in [#5725](https://github.com/Stirling-Tools/Stirling-PDF/pull/5725)
- feat(annotation): add moveAnnotation API for efficient repositioning of annotations, and bump embed to 2.7.0 by [@balazs-szucs](https://github.com/balazs-szucs) in [#5809](https://github.com/Stirling-Tools/Stirling-PDF/pull/5809)
- feat(conversion): switch PDF input engine to pdftohtml for improved performance and reduced dependencies by [@balazs-szucs](https://github.com/balazs-szucs) in [#5820](https://github.com/Stirling-Tools/Stirling-PDF/pull/5820)
- feat(aot): add aot-diagnostics.sh for AOT cache diagnostics and validation by [@balazs-szucs](https://github.com/balazs-szucs) in [#5848](https://github.com/Stirling-Tools/Stirling-PDF/pull/5848)

##### Minor Enhancements

- Update frontend minor package versions by [@jbrunton96](https://github.com/jbrunton96) in [#5787](https://github.com/Stirling-Tools/Stirling-PDF/pull/5787)
- Sync up Tauri versions by [@jbrunton96](https://github.com/jbrunton96) in [#5789](https://github.com/Stirling-Tools/Stirling-PDF/pull/5789)
- zip and response issues by [@Frooodle](https://github.com/Frooodle) in [#5786](https://github.com/Stirling-Tools/Stirling-PDF/pull/5786)
- Change to use dpdm for circular import scanning by [@jbrunton96](https://github.com/jbrunton96) in [#5788](https://github.com/Stirling-Tools/Stirling-PDF/pull/5788)
- Cachefixing test by [@Frooodle](https://github.com/Frooodle) in [#5793](https://github.com/Stirling-Tools/Stirling-PDF/pull/5793)
- Desktop connection SaaS: config, billing, team support by [@ConnorYoh](https://github.com/ConnorYoh) in [#5768](https://github.com/Stirling-Tools/Stirling-PDF/pull/5768)
- Switch to use ESLint 10 by [@jbrunton96](https://github.com/jbrunton96) in [#5794](https://github.com/Stirling-Tools/Stirling-PDF/pull/5794)
- cleanups by [@Frooodle](https://github.com/Frooodle) in [#5795](https://github.com/Stirling-Tools/Stirling-PDF/pull/5795)
- DocumentBuilderFactory limiting by [@Frooodle](https://github.com/Frooodle) in [#5797](https://github.com/Stirling-Tools/Stirling-PDF/pull/5797)
- lint by [@reecebrowne](https://github.com/reecebrowne) in [#5802](https://github.com/Stirling-Tools/Stirling-PDF/pull/5802)
- Harden shared signature endpoints  by [@Frooodle](https://github.com/Frooodle) in [#5806](https://github.com/Stirling-Tools/Stirling-PDF/pull/5806)
- open-saml bumps by [@Frooodle](https://github.com/Frooodle) in [#5805](https://github.com/Stirling-Tools/Stirling-PDF/pull/5805)
- fix split cuased by defaultParameters breaking dynamic endpoint tools by [@Frooodle](https://github.com/Frooodle) in [#5838](https://github.com/Stirling-Tools/Stirling-PDF/pull/5838)
- hardening by [@Frooodle](https://github.com/Frooodle) in [#5807](https://github.com/Stirling-Tools/Stirling-PDF/pull/5807)
- Fix health status checks falling under mettric flag by [@Frooodle](https://github.com/Frooodle) in [#5821](https://github.com/Stirling-Tools/Stirling-PDF/pull/5821)
- Frontend and Desktop audit fixes by [@ConnorYoh](https://github.com/ConnorYoh) in [#5840](https://github.com/Stirling-Tools/Stirling-PDF/pull/5840)
- refactor(merge,split,json): adopt streaming approach and standardize types, address gradle warnings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5803](https://github.com/Stirling-Tools/Stirling-PDF/pull/5803)
- fallback for /api/v1/config/endpoints-availability by [@ConnorYoh](https://github.com/ConnorYoh) in [#5842](https://github.com/Stirling-Tools/Stirling-PDF/pull/5842)
- Add check for ghostscript before plowing on with removeDataOutsideCrop by [@ConnorYoh](https://github.com/ConnorYoh) in [#5845](https://github.com/Stirling-Tools/Stirling-PDF/pull/5845)
- Fix split tooltips by [@reecebrowne](https://github.com/reecebrowne) in [#5847](https://github.com/Stirling-Tools/Stirling-PDF/pull/5847)

##### Docker Updates

- disable other dockers by [@Frooodle](https://github.com/Frooodle) in [#5792](https://github.com/Stirling-Tools/Stirling-PDF/pull/5792)
- docker cache fix by [@Frooodle](https://github.com/Frooodle) in [#5801](https://github.com/Stirling-Tools/Stirling-PDF/pull/5801)
- \[Aikido] AI Fix for 3rd party Github Actions should be pinned by [@aikido-autofix](https://github.com/aikido-autofix)\[bot] in [#5817](https://github.com/Stirling-Tools/Stirling-PDF/pull/5817)
- fix(aot): use Spring Boot exploded layer format for aot cache by [@balazs-szucs](https://github.com/balazs-szucs) in [#5811](https://github.com/Stirling-Tools/Stirling-PDF/pull/5811)
- \[StepSecurity] Apply security best practices by [@step-security-bot](https://github.com/step-security-bot) in [#5830](https://github.com/Stirling-Tools/Stirling-PDF/pull/5830)
- tauri jdk25 and docs by [@Frooodle](https://github.com/Frooodle) in [#5814](https://github.com/Stirling-Tools/Stirling-PDF/pull/5814)

##### Development Tools

- build(deps): bump ajv from 8.17.1 to 8.18.0 in /devTools in the npm\_and\_yarn group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5774](https://github.com/Stirling-Tools/Stirling-PDF/pull/5774)
- build(deps-dev): bump stylelint from 16.26.1 to 17.4.0 in /devTools by [@dependabot](https://github.com/dependabot)\[bot] in [#5822](https://github.com/Stirling-Tools/Stirling-PDF/pull/5822)

##### Other Changes

- build(deps-dev): bump pillow from 12.1.0 to 12.1.1 in /.github/scripts in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5720](https://github.com/Stirling-Tools/Stirling-PDF/pull/5720)
- build(deps): bump pillow from 12.1.0 to 12.1.1 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5719](https://github.com/Stirling-Tools/Stirling-PDF/pull/5719)
- deps by [@Frooodle](https://github.com/Frooodle) in [#5796](https://github.com/Stirling-Tools/Stirling-PDF/pull/5796)
- chore(deps): update dependencies for security by [@balazs-szucs](https://github.com/balazs-szucs) in [#5813](https://github.com/Stirling-Tools/Stirling-PDF/pull/5813)
- ci: provide default desktop env vars in tauri GitHub Actions builds by [@Frooodle](https://github.com/Frooodle) in [#5815](https://github.com/Stirling-Tools/Stirling-PDF/pull/5815)
- skip certs by [@Frooodle](https://github.com/Frooodle) in [#5819](https://github.com/Stirling-Tools/Stirling-PDF/pull/5819)
- build(deps): bump pypdf from 6.6.2 to 6.7.4 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5825](https://github.com/Stirling-Tools/Stirling-PDF/pull/5825)
- build(deps): bump github/codeql-action from 4.31.10 to 4.32.4 by [@dependabot](https://github.com/dependabot)\[bot] in [#5833](https://github.com/Stirling-Tools/Stirling-PDF/pull/5833)
- build(deps): bump actions/ai-inference from 2.0.5 to 2.0.7 by [@dependabot](https://github.com/dependabot)\[bot] in [#5831](https://github.com/Stirling-Tools/Stirling-PDF/pull/5831)
- build(deps): bump com.sun.xml.bind:jaxb-core from 2.3.0.1 to 4.0.6 by [@dependabot](https://github.com/dependabot)\[bot] in [#5365](https://github.com/Stirling-Tools/Stirling-PDF/pull/5365)

#### New Contributors

- [@aikido-autofix](https://github.com/aikido-autofix)\[bot] made their first contribution in [#5817](https://github.com/Stirling-Tools/Stirling-PDF/pull/5817)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.3...v2.6.0>

---
##### [\`2.5.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.3)

This release contains:

- New feature for XLSX conversion
- New feature for splitting a page into printable chunks (a3 into 2 a4 etc for posters)
- Keyboard shortcut support for the viewer
- Bug fixes for some viewer issues
- Bug fix for cookie consent showing on desktop builds

#### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@intelliking](https://github.com/intelliking) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

#### New Contributors

- [@intelliking](https://github.com/intelliking) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

<!-- Release notes generated using configuration in .github/release.yml at v2.5.3 -->

#### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@statxc](https://github.com/statxc) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

#### New Contributors

- [@statxc](https://github.com/statxc) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

<!-- Release notes generated using configuration in .github/release.yml at v2.5.3 -->

#### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@statxc](https://github.com/statxc) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

#### New Contributors

- [@statxc](https://github.com/statxc) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

---
##### [\`2.5.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.2)

This is a release for

- Security improvements
- Ruler / Measure support in the viewer
  Bug fixes for:
- writing to forms not working on OSS (package now moved fully to OSS)
- Possible fix for mac desktop issues
- desktop not being detected as desktop all the time
- license checks not having a retry
- desktop having wrong publisher ID

#### What's Changed

##### Enhancements

- Add plist file for Mac permissions by [@jbrunton96](https://github.com/jbrunton96) in [#5756](https://github.com/Stirling-Tools/Stirling-PDF/pull/5756)

##### Minor Enhancements

- ruler support by [@Frooodle](https://github.com/Frooodle) in [#5758](https://github.com/Stirling-Tools/Stirling-PDF/pull/5758)
- fix publishing for tauri author by [@Frooodle](https://github.com/Frooodle) in [#5757](https://github.com/Stirling-Tools/Stirling-PDF/pull/5757)
- dos fixes by [@Frooodle](https://github.com/Frooodle) in [#5759](https://github.com/Stirling-Tools/Stirling-PDF/pull/5759)
- licensere reTry by [@Frooodle](https://github.com/Frooodle) in [#5763](https://github.com/Stirling-Tools/Stirling-PDF/pull/5763)
- authclient by [@Frooodle](https://github.com/Frooodle) in [#5761](https://github.com/Stirling-Tools/Stirling-PDF/pull/5761)
- zipFix by [@Frooodle](https://github.com/Frooodle) in [#5762](https://github.com/Stirling-Tools/Stirling-PDF/pull/5762)
- Update de translation.toml by [@Hugomaulwurf76](https://github.com/Hugomaulwurf76) in [#5736](https://github.com/Stirling-Tools/Stirling-PDF/pull/5736)
- Translate various terms in Italian localization by [@albanobattistella](https://github.com/albanobattistella) in [#5749](https://github.com/Stirling-Tools/Stirling-PDF/pull/5749)
- Move Forms location by [@Frooodle](https://github.com/Frooodle) in [#5769](https://github.com/Stirling-Tools/Stirling-PDF/pull/5769)
- translations ai (please override as you see fit in new PRs these are placeholder) by [@Frooodle](https://github.com/Frooodle) in [#5770](https://github.com/Stirling-Tools/Stirling-PDF/pull/5770)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5675](https://github.com/Stirling-Tools/Stirling-PDF/pull/5675)

##### Other Changes

- build(tauri): enforce Java 17+ requirement in Windows jlink build script by [@Ludy87](https://github.com/Ludy87) in [#5684](https://github.com/Stirling-Tools/Stirling-PDF/pull/5684)

#### New Contributors

- [@Hugomaulwurf76](https://github.com/Hugomaulwurf76) made their first contribution in [#5736](https://github.com/Stirling-Tools/Stirling-PDF/pull/5736)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.1...v2.5.2>

---
##### [\`2.5.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.1)

Several bug fixes in this release

- Login issues showing "something went wrong" when language list = 1
- Forms not showing correctly
- Forms not working on desktop
- Desktop SSO redirect race condition issues
- 431 error for large endpoint for endpoints available

#### What's Changed

##### Minor Enhancements

- Fix SAML login "something went wrong" when language list = 1  by [@Frooodle](https://github.com/Frooodle) in [#5750](https://github.com/Stirling-Tools/Stirling-PDF/pull/5750)
- fix(forms): Update form field UI and behavior for better interactivity and alignment by [@balazs-szucs](https://github.com/balazs-szucs) in [#5747](https://github.com/Stirling-Tools/Stirling-PDF/pull/5747)
- fixes for desktop SSO by [@Frooodle](https://github.com/Frooodle) in [#5751](https://github.com/Stirling-Tools/Stirling-PDF/pull/5751)
- large query reduction by [@Frooodle](https://github.com/Frooodle) in [#5754](https://github.com/Stirling-Tools/Stirling-PDF/pull/5754)
- fix(form-fill): fix hardcoded response by [@balazs-szucs](https://github.com/balazs-szucs) in [#5755](https://github.com/Stirling-Tools/Stirling-PDF/pull/5755)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.0...v2.5.1>

---
##### [\`2.5.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.0)

This is a big update with lots of new functionality and changes like Form fill and redaction/annotation improvements! Also several changes around the login session expiry
Special thanks to [@balazs-szucs](https://github.com/balazs-szucs), who put a lot of work into this release!

New functionality:

- Huge manual redaction changes with colour selection and improved UI
- Add attachment support with sidebar button for viewing attachments etc (Seen in viewer mode)
- FormFill tool with context and UI components for PDF form filling
- Desktop now edits files that have been openned instead of creating new copies
- Extra JWT settings to customise expiry times for desktop and browser
- Add/remove link support

Extra improvements:

- Text selection improvements within the viewer with custom actions
- Improved link handling and link location
- EmbedPDF 2.6.0 upgrade for several bug fixes
- Multiple fixes with the viewer, its functionality, and its export
- PDF Text editor cache / JSON size issues
- Enhanced JWT handling and refreshing for better session management without forced re-logins
- Improved annotation UI
- Files correctly open in the viewer automatically if only 1 file is opened
- Improved tool disable menu to be able to disable all remaining tools and docs

#### What's Changed

##### Enhancements

- feat(redaction): improve manual redaction with color selection and updated UI elements by [@balazs-szucs](https://github.com/balazs-szucs) in [#5679](https://github.com/Stirling-Tools/Stirling-PDF/pull/5679)
- feat(text-selection): implement text selection enhancement for double and triple-click actions by [@balazs-szucs](https://github.com/balazs-szucs) in [#5712](https://github.com/Stirling-Tools/Stirling-PDF/pull/5712)
- feat(linklayer): improve link handling with pdf-lib integration and add link toolbar, add delete link functionality by [@balazs-szucs](https://github.com/balazs-szucs) in [#5715](https://github.com/Stirling-Tools/Stirling-PDF/pull/5715)
- feat(attachments): add attachment support with sidebar and API integration by [@balazs-szucs](https://github.com/balazs-szucs) in [#5673](https://github.com/Stirling-Tools/Stirling-PDF/pull/5673)
- feat(form-fill): FormFill tool with context and UI components for PDF form filling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5711](https://github.com/Stirling-Tools/Stirling-PDF/pull/5711)
- feat(frontend): Upgrade embedPDF to v2.6.0 and migrate to pdf-lib fork, fix attachment/bookmark panel by [@balazs-szucs](https://github.com/balazs-szucs) in [#5723](https://github.com/Stirling-Tools/Stirling-PDF/pull/5723)

##### Minor Enhancements

- Update translation by [@albanobattistella](https://github.com/albanobattistella) in [#5670](https://github.com/Stirling-Tools/Stirling-PDF/pull/5670)
- various  viewer pill fixes by [@reecebrowne](https://github.com/reecebrowne) in [#5714](https://github.com/Stirling-Tools/Stirling-PDF/pull/5714)
- Fix viewer export by [@reecebrowne](https://github.com/reecebrowne) in [#5713](https://github.com/Stirling-Tools/Stirling-PDF/pull/5713)
- fix tool disabling for docs and others by [@Frooodle](https://github.com/Frooodle) in [#5722](https://github.com/Stirling-Tools/Stirling-PDF/pull/5722)
- Preserve local paths for desktop saves by [@Frooodle](https://github.com/Frooodle) in [#5543](https://github.com/Stirling-Tools/Stirling-PDF/pull/5543)
- refactor(api): replace regex string literals with Pattern instances for improved performance and readability by [@balazs-szucs](https://github.com/balazs-szucs) in [#5680](https://github.com/Stirling-Tools/Stirling-PDF/pull/5680)
- refactor: fix homepage file upload path by [@Frooodle](https://github.com/Frooodle) in [#5738](https://github.com/Stirling-Tools/Stirling-PDF/pull/5738)
- PDF Text editor changes by [@Frooodle](https://github.com/Frooodle) in [#5726](https://github.com/Stirling-Tools/Stirling-PDF/pull/5726)
- fix\_env\_files\_for\_tauri by [@ConnorYoh](https://github.com/ConnorYoh) in [#5741](https://github.com/Stirling-Tools/Stirling-PDF/pull/5741)
- JWT enhancements for desktop by [@Frooodle](https://github.com/Frooodle) in [#5742](https://github.com/Stirling-Tools/Stirling-PDF/pull/5742)
- Chore/v2/improve annotation UI by [@reecebrowne](https://github.com/reecebrowne) in [#5724](https://github.com/Stirling-Tools/Stirling-PDF/pull/5724)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.6...v2.5.0>

---
##### [\`2.4.6\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.6)

Several bug fixes for the issues:

- License not always correctly loading due to cache issues
- public endpoints not always accessible when without JWT
- Language not always correctly taking the server's default
- Desktop issues for SAML SSO
- maxFileSize server setting not being handled correctly

As well as

- SSO cleanups
- Extra SSO logging for future issues
- markdown conversion now supports images

##### What's Changed

##### Breaking Changes

- fix(markdown): markdown conversion image handling and zip support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5677](https://github.com/Stirling-Tools/Stirling-PDF/pull/5677)

##### Enhancements

- Enhance SSO SAML in desktop app by [@jbrunton96](https://github.com/jbrunton96) in [#5705](https://github.com/Stirling-Tools/Stirling-PDF/pull/5705)

##### Minor Enhancements

- Fix maxFileSize environment variable support ([#5542](https://github.com/Stirling-Tools/Stirling-PDF/issues/5542)) by [@Eruis2579](https://github.com/Eruis2579) in [#5655](https://github.com/Stirling-Tools/Stirling-PDF/pull/5655)
- Bug fixing and debugs by [@Frooodle](https://github.com/Frooodle) in [#5704](https://github.com/Stirling-Tools/Stirling-PDF/pull/5704)
- fix(api): address potential backend resource leaks and improve frontend accessibility by [@balazs-szucs](https://github.com/balazs-szucs) in [#5678](https://github.com/Stirling-Tools/Stirling-PDF/pull/5678)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5668](https://github.com/Stirling-Tools/Stirling-PDF/pull/5668)
- build(deps): bump com.diffplug.spotless from 8.1.0 to 8.2.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5592](https://github.com/Stirling-Tools/Stirling-PDF/pull/5592)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.5...v2.4.6>

---
##### [\`2.4.5\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.5)

Desktop changes

- Windows desktop MSI to support headless installation with custom parameters to set up server URL and login mode, an example for this would be `msiexec /i "Stirling-PDF-windows-x86_64.msi
  " /qn STIRLING_SERVER_URL="http://192.168.1.53:2357/" STIRLING_LOCK_CONNECTION=1`

`STIRLING_SERVER_URL` auto sets the URL and `STIRLING_LOCK_CONNECTION=1` sets the connection mode to be ONLY self-host server, ensuring no mistaken connections to external servers. Please note this feature is currently in testing, if you have feedback or have tried it please let us know! (Even if it worked perfectly its good to know!)

- SSO UI changes
- support for login method restrictions in desktop
- remembers last entered selfhost URL for easy reconnection

General changes

- SSO functionality cleanups (a few more to come soon!)
- New strict mode for PDF/A conversion for issues were conversation isn't perfect
- redaction improvements

Bug fixes

- SSO auto login mode now working correctly

##### What's Changed

##### Enhancements

- feat:(pdfa-conversion) Implement Strict PDF/A Mode with Verification by [@balazs-szucs](https://github.com/balazs-szucs) in [#5663](https://github.com/Stirling-Tools/Stirling-PDF/pull/5663)
- feat(desktop): show and reuse last used server URL in Setup Wizard by [@Ludy87](https://github.com/Ludy87) in [#5659](https://github.com/Stirling-Tools/Stirling-PDF/pull/5659)
- feat(redaction): update to embedPDF v2.4.0 with unified redaction mode support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5652](https://github.com/Stirling-Tools/Stirling-PDF/pull/5652)

##### Minor Enhancements

- Saml fix by [@Frooodle](https://github.com/Frooodle) in [#5651](https://github.com/Stirling-Tools/Stirling-PDF/pull/5651)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5618](https://github.com/Stirling-Tools/Stirling-PDF/pull/5618)
- fix(frontend): improve synonym search by [@Ludy87](https://github.com/Ludy87) in [#5639](https://github.com/Stirling-Tools/Stirling-PDF/pull/5639)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5666](https://github.com/Stirling-Tools/Stirling-PDF/pull/5666)
- Headless windows installer by [@Frooodle](https://github.com/Frooodle) in [#5664](https://github.com/Stirling-Tools/Stirling-PDF/pull/5664)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5669](https://github.com/Stirling-Tools/Stirling-PDF/pull/5669)
- SSO styling changes  by [@Frooodle](https://github.com/Frooodle) in [#5671](https://github.com/Stirling-Tools/Stirling-PDF/pull/5671)

##### Docker Updates

- build(deps): bump alpine from 3.23.2 to 3.23.3 in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5590](https://github.com/Stirling-Tools/Stirling-PDF/pull/5590)
- chore(ci): update GitHub Actions to latest stable versions by [@Ludy87](https://github.com/Ludy87) in [#5629](https://github.com/Stirling-Tools/Stirling-PDF/pull/5629)

##### Translation Changes

- chore(ci): improve language TOML check output with fixer guidance by [@Ludy87](https://github.com/Ludy87) in [#5638](https://github.com/Stirling-Tools/Stirling-PDF/pull/5638)
- chore(ci): refine pre-commit workflows, add TOML sorting by [@Ludy87](https://github.com/Ludy87) in [#5648](https://github.com/Stirling-Tools/Stirling-PDF/pull/5648)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5667](https://github.com/Stirling-Tools/Stirling-PDF/pull/5667)

##### Development Tools

- chore(vscode): replace deprecated Copilot extension with Copilot Chat by [@Ludy87](https://github.com/Ludy87) in [#5662](https://github.com/Stirling-Tools/Stirling-PDF/pull/5662)

##### Other Changes

- build(deps): bump io.swagger.core.v3:swagger-core-jakarta from 2.2.41 to 2.2.42 by [@dependabot](https://github.com/dependabot)\[bot] in [#5549](https://github.com/Stirling-Tools/Stirling-PDF/pull/5549)
- build(deps): bump org.postgresql:postgresql from 42.7.8 to 42.7.9 by [@dependabot](https://github.com/dependabot)\[bot] in [#5554](https://github.com/Stirling-Tools/Stirling-PDF/pull/5554)
- fix(build): define repositories to resolve test classpath dependencies by [@Ludy87](https://github.com/Ludy87) in [#5650](https://github.com/Stirling-Tools/Stirling-PDF/pull/5650)
- tauri comments by [@Frooodle](https://github.com/Frooodle) in [#5634](https://github.com/Stirling-Tools/Stirling-PDF/pull/5634)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.4...v2.4.5>

---
##### [\`2.4.4\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.4)

Quick fix for page editor bug causes multi-page selection issues

This release also contains

- Italian translations
- Bates stamping functionality to add page numbers
- Extract bookmarks API fix
- Diagnostics command in CLI for easy error reporting (grabs logs into a zip on request for you to view)

##### What's Changed

##### Enhancements

- feat(i18n): add missing compare placeholder and stamp label translations by [@Ludy87](https://github.com/Ludy87) in [#5636](https://github.com/Stirling-Tools/Stirling-PDF/pull/5636)

##### Minor Enhancements

- update to add optional Zero Padding to page numbers (Bates Stamping).… by [@mrober01](https://github.com/mrober01) in [#5612](https://github.com/Stirling-Tools/Stirling-PDF/pull/5612)
- Fix ClassCastException in extractBookmarks endpoint ([#5578](https://github.com/Stirling-Tools/Stirling-PDF/issues/5578)) by [@Eruis2579](https://github.com/Eruis2579) in [#5604](https://github.com/Stirling-Tools/Stirling-PDF/pull/5604)
- Bug/page editor additional fixes by [@reecebrowne](https://github.com/reecebrowne) in [#5660](https://github.com/Stirling-Tools/Stirling-PDF/pull/5660)
- Updated Italian translation by [@albanobattistella](https://github.com/albanobattistella) in [#5637](https://github.com/Stirling-Tools/Stirling-PDF/pull/5637)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5642](https://github.com/Stirling-Tools/Stirling-PDF/pull/5642)

##### Other Changes

- diagnostic script by [@Frooodle](https://github.com/Frooodle) in [#5646](https://github.com/Stirling-Tools/Stirling-PDF/pull/5646)

##### New Contributors

- [@mrober01](https://github.com/mrober01) made their first contribution in [#5612](https://github.com/Stirling-Tools/Stirling-PDF/pull/5612)
- [@Eruis2579](https://github.com/Eruis2579) made their first contribution in [#5604](https://github.com/Stirling-Tools/Stirling-PDF/pull/5604)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.3...v2.4.4>

---
##### [\`2.4.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.3)

Big desktop release today, full of fixes as well as other changes!

- Correctly show desktop and server versioning separately
- Support for watched folders to be recursive and multiple directories to be defined
- Desktop login expiry fix
- Desktop self-host connection improvements (self-sign fixes and others)
- Page editor performance and UI improvements
- frontend error screen appearing during SSO fix
- Desktop CORS fixes

##### What's Changed

##### Enhancements

- feat(settings): display frontend/backend versions and warn on client-server mismatch by [@Ludy87](https://github.com/Ludy87) in [#5571](https://github.com/Stirling-Tools/Stirling-PDF/pull/5571)
- Support multiple pipeline watch directories and configurable pipeline base path by [@Frooodle](https://github.com/Frooodle) in [#5545](https://github.com/Stirling-Tools/Stirling-PDF/pull/5545)

##### Minor Enhancements

- Stop type checking TypeScript files that won't be run by [@jbrunton96](https://github.com/jbrunton96) in [#5607](https://github.com/Stirling-Tools/Stirling-PDF/pull/5607)
- Fixed missing AuthnRequest bug by [@DarioGii](https://github.com/DarioGii) in [#5606](https://github.com/Stirling-Tools/Stirling-PDF/pull/5606)
- Update links to Docs by [@numanair](https://github.com/numanair) in [#5611](https://github.com/Stirling-Tools/Stirling-PDF/pull/5611)
- fix(frontend): prevent hydration errors in admin security form and improve autofill support by [@Ludy87](https://github.com/Ludy87) in [#5613](https://github.com/Stirling-Tools/Stirling-PDF/pull/5613)
- fix(auth): align token refresh handling with updated backend response by [@Ludy87](https://github.com/Ludy87) in [#5609](https://github.com/Stirling-Tools/Stirling-PDF/pull/5609)
- always allow tauri cors by [@Frooodle](https://github.com/Frooodle) in [#5616](https://github.com/Stirling-Tools/Stirling-PDF/pull/5616)
- Bug/pageeditor virtualisation by [@reecebrowne](https://github.com/reecebrowne) in [#5614](https://github.com/Stirling-Tools/Stirling-PDF/pull/5614)
- Stop attempting to refresh Spring tokens in desktop by [@Frooodle](https://github.com/Frooodle) in [#5610](https://github.com/Stirling-Tools/Stirling-PDF/pull/5610)

##### Other Changes

- Update Python dependencies in requirements files by [@Ludy87](https://github.com/Ludy87) in [#5627](https://github.com/Stirling-Tools/Stirling-PDF/pull/5627)
- Pin GitHub Actions and add runner hardening by [@Ludy87](https://github.com/Ludy87) in [#5628](https://github.com/Stirling-Tools/Stirling-PDF/pull/5628)

##### New Contributors

- [@numanair](https://github.com/numanair) made their first contribution in [#5611](https://github.com/Stirling-Tools/Stirling-PDF/pull/5611)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.2...v2.4.3>

---
##### [\`2.4.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.2)

This is a quick update including

- Fixes for Audit display failing under certain scenarios
- Fix for tools not being correctly disabled via disable-endpoints settings
- Text editor font rendering fixes
- New Variables for Stamp PDF feature!

##### What's Changed

##### Enhancements

- feat(stamp): add dynamic variables and templates for stamp text customization by [@balazs-szucs](https://github.com/balazs-szucs) in [#5546](https://github.com/Stirling-Tools/Stirling-PDF/pull/5546)

##### Minor Enhancements

- Fix tool disabling by [@Frooodle](https://github.com/Frooodle) in [#5585](https://github.com/Stirling-Tools/Stirling-PDF/pull/5585)
- Fix Audit & Usage Analytics Sections by [@DarioGii](https://github.com/DarioGii) in [#5586](https://github.com/Stirling-Tools/Stirling-PDF/pull/5586)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5538](https://github.com/Stirling-Tools/Stirling-PDF/pull/5538)

##### Other Changes

- fix: PDF Text Editor file open by [@bittoby](https://github.com/bittoby) in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

##### New Contributors

- [@bittoby](https://github.com/bittoby) made their first contribution in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.1...v2.4.2>

<!-- Release notes generated using configuration in .github/release.yml at v2.4.2 -->

##### What's Changed

##### Enhancements

- feat(stamp): add dynamic variables and templates for stamp text customization by [@balazs-szucs](https://github.com/balazs-szucs) in [#5546](https://github.com/Stirling-Tools/Stirling-PDF/pull/5546)

##### Minor Enhancements

- Fix tool disabling by [@Frooodle](https://github.com/Frooodle) in [#5585](https://github.com/Stirling-Tools/Stirling-PDF/pull/5585)
- Fix Audit & Usage Analytics Sections by [@DarioGii](https://github.com/DarioGii) in [#5586](https://github.com/Stirling-Tools/Stirling-PDF/pull/5586)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5538](https://github.com/Stirling-Tools/Stirling-PDF/pull/5538)

##### Other Changes

- fix: PDF Text Editor file open by [@bittoby](https://github.com/bittoby) in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

##### New Contributors

- [@bittoby](https://github.com/bittoby) made their first contribution in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.1...v2.4.2>

---
##### [\`2.4.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.1)

Lots of bug fixes today!
Fix for HTTPS connection for desktop mode
Xframe option now in settings.yml and options menu for iframe support
Various other bug fixes and dependencies updates!
Mac desktop not starting correctly

##### What's Changed

##### Enhancements

- deps(frontend, tauri): update Tauri, Rust crates, and frontend dependencies by [@Ludy87](https://github.com/Ludy87) in [#5569](https://github.com/Stirling-Tools/Stirling-PDF/pull/5569)

##### Minor Enhancements

- pipeline fixes for naming issues  by [@Frooodle](https://github.com/Frooodle) in [#5570](https://github.com/Stirling-Tools/Stirling-PDF/pull/5570)
- xframe fix new by [@Frooodle](https://github.com/Frooodle) in [#5580](https://github.com/Stirling-Tools/Stirling-PDF/pull/5580)
- tool tags by [@Frooodle](https://github.com/Frooodle) in [#5568](https://github.com/Stirling-Tools/Stirling-PDF/pull/5568)
- deps(embedPDF): Bump codebase to embedPDF v2.3.0 and adjust codebase for new features by [@balazs-szucs](https://github.com/balazs-szucs) in [#5567](https://github.com/Stirling-Tools/Stirling-PDF/pull/5567)
- possible login fixes by [@Frooodle](https://github.com/Frooodle) in [#5444](https://github.com/Stirling-Tools/Stirling-PDF/pull/5444)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5581](https://github.com/Stirling-Tools/Stirling-PDF/pull/5581)

##### Docker Updates

- chore(ci): remove automated version sync job from build workflow by [@Ludy87](https://github.com/Ludy87) in [#5547](https://github.com/Stirling-Tools/Stirling-PDF/pull/5547)

##### Other Changes

- build(deps): bump pypdf from 6.6.0 to 6.6.2 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5577](https://github.com/Stirling-Tools/Stirling-PDF/pull/5577)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.0...v2.4.1>

---
##### [\`2.4.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.0)

Lots of new features in this release

- database backup management (Only for internal H2 database users)
- Full 2FA support with One-time-password auth code app support!
- Get info supporting better compliance verification
- PDF/X conversions
- automation tool now export into folder scan JSONs for folder automation

Bug fixes for

- Sign tool
- SSO user creation
- addStamp not handling timestamps

Thanks as always for all the fixes and work everyone has been doing! such as [@balazs-szucs](https://github.com/balazs-szucs) or the new bug fix from [@Joey4](https://github.com/Joey4) !
Special thanks to [@Ludy87](https://github.com/Ludy87) for introducing the awesome 2FA feature!

##### What's Changed

##### Enhancements

- feat(admin): add H2 database backup & restore management to admin UI by [@Ludy87](https://github.com/Ludy87) in [#5528](https://github.com/Stirling-Tools/Stirling-PDF/pull/5528)
- feat(frontend): enhance icon detection and update config navigation icon by [@Ludy87](https://github.com/Ludy87) in [#5524](https://github.com/Stirling-Tools/Stirling-PDF/pull/5524)
- feat(security): add TOTP-based multi-factor authentication with backend and UI support by [@Ludy87](https://github.com/Ludy87) in [#5417](https://github.com/Stirling-Tools/Stirling-PDF/pull/5417)
- feat(compliance): implement compliance verfication for get info on PDF by [@balazs-szucs](https://github.com/balazs-szucs) in [#5435](https://github.com/Stirling-Tools/Stirling-PDF/pull/5435)

##### Minor Enhancements

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5530](https://github.com/Stirling-Tools/Stirling-PDF/pull/5530)
- fix(annotations): fix error 300 on sign frontend by [@balazs-szucs](https://github.com/balazs-szucs) in [#5536](https://github.com/Stirling-Tools/Stirling-PDF/pull/5536)
- Fix: Whitelist health endpoints in Security and Enterprise Filter + fix keep original commit by [@Frooodle](https://github.com/Frooodle) in [#5494](https://github.com/Stirling-Tools/Stirling-PDF/pull/5494)
- API cleanups by [@Frooodle](https://github.com/Frooodle) in [#5537](https://github.com/Stirling-Tools/Stirling-PDF/pull/5537)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5490](https://github.com/Stirling-Tools/Stirling-PDF/pull/5490)
- refactor(security): clean up SSO handling, harden URL parsing, and bump dependencies by [@Ludy87](https://github.com/Ludy87) in [#5523](https://github.com/Stirling-Tools/Stirling-PDF/pull/5523)
- fix(common): 🛡️CWE-681 & CWE-197 eliminate tainted numeric casts in size parsing by using BigDecimal with range guards by [@Ludy87](https://github.com/Ludy87) in [#5521](https://github.com/Stirling-Tools/Stirling-PDF/pull/5521)
- build(deps): bump nginx from `c083c37` to `b0f7830` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5500](https://github.com/Stirling-Tools/Stirling-PDF/pull/5500)
- build(deps): bump node from `f4769ca` to `e80397b` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5498](https://github.com/Stirling-Tools/Stirling-PDF/pull/5498)
- Fix V2 SSO user creation by [@Frooodle](https://github.com/Frooodle) in [#5079](https://github.com/Stirling-Tools/Stirling-PDF/pull/5079)
- removal of old java desktop + workspace change in tauri by [@Frooodle](https://github.com/Frooodle) in [#5459](https://github.com/Stirling-Tools/Stirling-PDF/pull/5459)
- Date and time placeholders in addTextStamp are not working by [@Joey4](https://github.com/Joey4) in [#5446](https://github.com/Stirling-Tools/Stirling-PDF/pull/5446)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5539](https://github.com/Stirling-Tools/Stirling-PDF/pull/5539)
- \[V2] feat(convert): add PDF/X export option by [@balazs-szucs](https://github.com/balazs-szucs) in [#5285](https://github.com/Stirling-Tools/Stirling-PDF/pull/5285)
- V2 Show enterprise demo messages for audit and usage by [@Frooodle](https://github.com/Frooodle) in [#5226](https://github.com/Stirling-Tools/Stirling-PDF/pull/5226)
- Export folder scanning by [@Frooodle](https://github.com/Frooodle) in [#5544](https://github.com/Stirling-Tools/Stirling-PDF/pull/5544)
- translations by [@Frooodle](https://github.com/Frooodle) in [#5541](https://github.com/Stirling-Tools/Stirling-PDF/pull/5541)

##### Docker Updates

- Add sync-versions job to GitHub Actions workflow by [@Ludy87](https://github.com/Ludy87) in [#5228](https://github.com/Stirling-Tools/Stirling-PDF/pull/5228)
- build(deps): bump debian from `f668110` to `ed542b2` in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5495](https://github.com/Stirling-Tools/Stirling-PDF/pull/5495)

##### Other Changes

- build(deps): bump logback from 1.5.23 to 1.5.24 by [@dependabot](https://github.com/dependabot)\[bot] in [#5468](https://github.com/Stirling-Tools/Stirling-PDF/pull/5468)
- build(deps): bump io.micrometer:micrometer-core from 1.16.1 to 1.16.2 by [@dependabot](https://github.com/dependabot)\[bot] in [#5466](https://github.com/Stirling-Tools/Stirling-PDF/pull/5466)

##### New Contributors

- [@Joey4](https://github.com/Joey4) made their first contribution in [#5446](https://github.com/Stirling-Tools/Stirling-PDF/pull/5446)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.3.1...v2.4.0>

---
##### [\`2.3.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.3.1)

Several bug fixes , including

- Scroll bar not showing correctly in settings menu
- Automate menus showing options correctly

and several other change,s such as SVG to PDF conversion and performance changes throughout app

##### What's Changed

##### Enhancements

- feat(conversion): add SVG to PDF conversion functionality by [@balazs-szucs](https://github.com/balazs-szucs) in [#5431](https://github.com/Stirling-Tools/Stirling-PDF/pull/5431)
- feat(pipeline): improve file processing with resource management and temp file handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5488](https://github.com/Stirling-Tools/Stirling-PDF/pull/5488)
- feat(admin): add tessdata language management for OCR and download support by [@Ludy87](https://github.com/Ludy87) in [#5519](https://github.com/Stirling-Tools/Stirling-PDF/pull/5519)

##### Minor Enhancements

- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5489](https://github.com/Stirling-Tools/Stirling-PDF/pull/5489)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5484](https://github.com/Stirling-Tools/Stirling-PDF/pull/5484)
- \[V2] fix(automation): enhance parameter handling and default values across operations, fix error in ManyToOne tools by [@balazs-szucs](https://github.com/balazs-szucs) in [#5123](https://github.com/Stirling-Tools/Stirling-PDF/pull/5123)
- scrollbar fixes by [@Frooodle](https://github.com/Frooodle) in [#5529](https://github.com/Stirling-Tools/Stirling-PDF/pull/5529)
- Fix hook ordering for endpoint name resolution by [@Frooodle](https://github.com/Frooodle) in [#5517](https://github.com/Stirling-Tools/Stirling-PDF/pull/5517)
- fix(automation): add zIndex and withinPortal props to dropdown components for improved UI consistency by [@balazs-szucs](https://github.com/balazs-szucs) in [#5527](https://github.com/Stirling-Tools/Stirling-PDF/pull/5527)
- refactor: remove legacy Thymeleaf web UI controllers and templates by [@Ludy87](https://github.com/Ludy87) in [#5406](https://github.com/Stirling-Tools/Stirling-PDF/pull/5406)
- fix(pipeline): avoid bad multipart by letting RestTemplate set boundary by [@Ludy87](https://github.com/Ludy87) in [#5522](https://github.com/Stirling-Tools/Stirling-PDF/pull/5522)
- chore(i18n): update and expand Dutch (nl-NL) translations by [@Stephan-P](https://github.com/Stephan-P) in [#5355](https://github.com/Stirling-Tools/Stirling-PDF/pull/5355)
- Update Italian translations by [@albanobattistella](https://github.com/albanobattistella) in [#5508](https://github.com/Stirling-Tools/Stirling-PDF/pull/5508)

##### Docker Updates

- chore(ci): enable Gradle dependency caching across GitHub workflows by [@Ludy87](https://github.com/Ludy87) in [#5400](https://github.com/Stirling-Tools/Stirling-PDF/pull/5400)
- build(deps): bump actions/checkout from 4.2.2 to 6.0.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5465](https://github.com/Stirling-Tools/Stirling-PDF/pull/5465)

##### Development Tools

- build(deps-dev): bump stylelint-config-standard from 39.0.1 to 40.0.0 in /devTools by [@dependabot](https://github.com/dependabot)\[bot] in [#5504](https://github.com/Stirling-Tools/Stirling-PDF/pull/5504)

##### Other Changes

- build(deps): bump actions/download-artifact from 6.0.0 to 7.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5503](https://github.com/Stirling-Tools/Stirling-PDF/pull/5503)
- build(deps): bump reportlab from 4.4.5 to 4.4.9 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5505](https://github.com/Stirling-Tools/Stirling-PDF/pull/5505)

---
##### [\`2.3.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.3.0)

Several important bug fixes in this release related to

- File conversion threading
- Non-roman alphabet files processing incorrectly
- Desktop app bugs (Lots more fixes coming!)
- And many others!

We also have some really cool features introduced such as

- Telegram bot (In Connections menu or settings.yml)
- PDF to EPUB and AZW3
- MSG support

##### What's Changed

##### Enhancements

- feat(build): enhance JaCoCo reporting with coverage summary and enforce thresholds by [@Ludy87](https://github.com/Ludy87) in [#5352](https://github.com/Stirling-Tools/Stirling-PDF/pull/5352)
- feat(ui): prevent self-modification in People management and highlight current user by [@Ludy87](https://github.com/Ludy87) in [#5441](https://github.com/Stirling-Tools/Stirling-PDF/pull/5441)
- feat(conversion): refactor EML parser to use Simple Java Mail library and add MSG support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5427](https://github.com/Stirling-Tools/Stirling-PDF/pull/5427)
- feat(conversion): add PDF to EPUB/AZW3 conversion support and settings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5434](https://github.com/Stirling-Tools/Stirling-PDF/pull/5434)

##### Minor Enhancements

- build(ci): pin base container images, switch npm install to npm ci, and harden EML error handling by [@Ludy87](https://github.com/Ludy87) in [#5353](https://github.com/Stirling-Tools/Stirling-PDF/pull/5353)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5426](https://github.com/Stirling-Tools/Stirling-PDF/pull/5426)
- Updated ga-IE translations and added keys to ignore list by [@aindriu80](https://github.com/aindriu80) in [#5178](https://github.com/Stirling-Tools/Stirling-PDF/pull/5178)
- fix(api): return JSON responses for admin settings + API key endpoints to prevent Tauri client parse errors by [@Ludy87](https://github.com/Ludy87) in [#5437](https://github.com/Stirling-Tools/Stirling-PDF/pull/5437)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5363](https://github.com/Stirling-Tools/Stirling-PDF/pull/5363)
- build(deps): bump node from 20-alpine to 25-alpine in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5311](https://github.com/Stirling-Tools/Stirling-PDF/pull/5311)
- build(deps): bump nginx from `8491795` to `c083c37` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5448](https://github.com/Stirling-Tools/Stirling-PDF/pull/5448)
- build(deps): bump globals from 16.5.0 to 17.0.0 in /frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5413](https://github.com/Stirling-Tools/Stirling-PDF/pull/5413)
- Add Telegram bot integration for pipeline processing by [@Ludy87](https://github.com/Ludy87) in [#5185](https://github.com/Stirling-Tools/Stirling-PDF/pull/5185)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5458](https://github.com/Stirling-Tools/Stirling-PDF/pull/5458)
- translations by [@Frooodle](https://github.com/Frooodle) in [#5469](https://github.com/Stirling-Tools/Stirling-PDF/pull/5469)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5473](https://github.com/Stirling-Tools/Stirling-PDF/pull/5473)
- fix(auth): remove unnecessary authentication requirement from SignatureController by [@balazs-szucs](https://github.com/balazs-szucs) in [#5477](https://github.com/Stirling-Tools/Stirling-PDF/pull/5477)
- Make controls sticky by [@reecebrowne](https://github.com/reecebrowne) in [#5478](https://github.com/Stirling-Tools/Stirling-PDF/pull/5478)
- fix: update broken enterprise docs link from /Pro to /Paid-Offerings by [@krizhnaa](https://github.com/krizhnaa) in [#5471](https://github.com/Stirling-Tools/Stirling-PDF/pull/5471)
- Libre threads by [@Frooodle](https://github.com/Frooodle) in [#5303](https://github.com/Stirling-Tools/Stirling-PDF/pull/5303)

##### Docker Updates

- build(deps): bump docker/setup-qemu-action from 3.6.0 to 3.7.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5326](https://github.com/Stirling-Tools/Stirling-PDF/pull/5326)
- build(deps): bump step-security/harden-runner from 2.12.1 to 2.14.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5324](https://github.com/Stirling-Tools/Stirling-PDF/pull/5324)
- ci(build): scope Docker layer cache per artifact to avoid cross-contamination by [@Ludy87](https://github.com/Ludy87) in [#5453](https://github.com/Stirling-Tools/Stirling-PDF/pull/5453)
- build(deps): bump alpine from 3.22.2 to 3.23.2 in /docker/backend by [@dependabot](https://github.com/dependabot)\[bot] in [#5316](https://github.com/Stirling-Tools/Stirling-PDF/pull/5316)
- build(deps): bump alpine from 3.22.1 to 3.23.2 in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5319](https://github.com/Stirling-Tools/Stirling-PDF/pull/5319)
- build(deps): bump debian from `1c25564` to `449673e` in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5357](https://github.com/Stirling-Tools/Stirling-PDF/pull/5357)
- build(deps): bump docker/setup-buildx-action from 3.11.1 to 3.12.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5463](https://github.com/Stirling-Tools/Stirling-PDF/pull/5463)
- Docker use latest libreoffice and fonts by [@Frooodle](https://github.com/Frooodle) in [#5482](https://github.com/Stirling-Tools/Stirling-PDF/pull/5482)

##### Translation Changes

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5462](https://github.com/Stirling-Tools/Stirling-PDF/pull/5462)

##### Other Changes

- fix(ci): read workflow\_dispatch PR number from inputs.pr in PR auto-deploy workflow by [@Ludy87](https://github.com/Ludy87) in [#5380](https://github.com/Stirling-Tools/Stirling-PDF/pull/5380)
- build(deps): bump github/codeql-action from 4.31.5 to 4.31.10 by [@dependabot](https://github.com/dependabot)\[bot] in [#5449](https://github.com/Stirling-Tools/Stirling-PDF/pull/5449)
- build(deps): bump pypdf from 6.4.0 to 6.6.0 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5422](https://github.com/Stirling-Tools/Stirling-PDF/pull/5422)
- build(deps): bump io.micrometer:micrometer-core from 1.16.0 to 1.16.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5358](https://github.com/Stirling-Tools/Stirling-PDF/pull/5358)
- Update user login conditions in workflow by [@Frooodle](https://github.com/Frooodle) in [#5457](https://github.com/Stirling-Tools/Stirling-PDF/pull/5457)
- fix(core): reinstall frontend dependencies when iconify package is missing by [@Ludy87](https://github.com/Ludy87) in [#5432](https://github.com/Stirling-Tools/Stirling-PDF/pull/5432)
- fix(translations): improve translation merger CLI and sync missing UI strings across locales by [@Ludy87](https://github.com/Ludy87) in [#5309](https://github.com/Stirling-Tools/Stirling-PDF/pull/5309)
- build(deps): bump urllib3 from 2.5.0 to 2.6.3 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5456](https://github.com/Stirling-Tools/Stirling-PDF/pull/5456)
- build(deps): bump docker/login-action from 3.4.0 to 3.6.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5464](https://github.com/Stirling-Tools/Stirling-PDF/pull/5464)

##### New Contributors

- [@krizhnaa](https://github.com/krizhnaa) made their first contribution in [#5471](https://github.com/Stirling-Tools/Stirling-PDF/pull/5471)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.2.1...v2.3.0>

<!-- Release notes generated using configuration in .github/release.yml at v2.3.0 -->

##### What's Changed

##### Enhancements

- feat(build): enhance JaCoCo reporting with coverage summary and enforce thresholds by [@Ludy87](https://github.com/Ludy87) in [#5352](https://github.com/Stirling-Tools/Stirling-PDF/pull/5352)
- feat(ui): prevent self-modification in People management and highlight current user by [@Ludy87](https://github.com/Ludy87) in [#5441](https://github.com/Stirling-Tools/Stirling-PDF/pull/5441)
- feat(conversion): refactor EML parser to use Simple Java Mail library and add MSG support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5427](https://github.com/Stirling-Tools/Stirling-PDF/pull/5427)
- feat(conversion): add PDF to EPUB/AZW3 conversion support and settings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5434](https://github.com/Stirling-Tools/Stirling-PDF/pull/5434)

##### Minor Enhancements

- build(ci): pin base container images, switch npm install to npm ci, and harden EML error handling by [@Ludy87](https://github.com/Ludy87) in [#5353](https://github.com/Stirling-Tools/Stirling-PDF/pull/5353)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5426](https://github.com/Stirling-Tools/Stirling-PDF/pull/5426)
- Updated ga-IE translations and added keys to ignore list by [@aindriu80](https://github.com/aindriu80) in [#5178](https://github.com/Stirling-Tools/Stirling-PDF/pull/5178)
- fix(api): return JSON responses for admin settings + API key endpoints to prevent Tauri client parse errors by [@Ludy87](https://github.com/Ludy87) in [#5437](https://github.com/Stirling-Tools/Stirling-PDF/pull/5437)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5363](https://github.com/Stirling-Tools/Stirling-PDF/pull/5363)
- build(deps): bump node from 20-alpine to 25-alpine in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5311](https://github.com/Stirling-Tools/Stirling-PDF/pull/5311)
- build(deps): bump nginx from `8491795` to `c083c37` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5448](https://github.com/Stirling-Tools/Stirling-PDF/pull/5448)
- build(deps): bump globals from 16.5.0 to 17.0.0 in /frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5413](https://github.com/Stirling-Tools/Stirling-PDF/pull/5413)
- Add Telegram bot integration for pipeline processing by [@Ludy87](https://github.com/Ludy87) in [#5185](https://github.com/Stirling-Tools/Stirling-PDF/pull/5185)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5458](https://github.com/Stirling-Tools/Stirling-PDF/pull/5458)
- translations by [@Frooodle](https://github.com/Frooodle) in [#5469](https://github.com/Stirling-Tools/Stirling-PDF/pull/5469)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5473](https://github.com/Stirling-Tools/Stirling-PDF/pull/5473)
- fix(auth): remove unnecessary authentication requirement from SignatureController by [@balazs-szucs](https://github.com/balazs-szucs) in [#5477](https://github.com/Stirling-Tools/Stirling-PDF/pull/5477)
- Make controls sticky by [@reecebrowne](https://github.com/reecebrowne) in [#5478](https://github.com/Stirling-Tools/Stirling-PDF/pull/5478)
- fix: update broken enterprise docs link from /Pro to /Paid-Offerings by [@krizhnaa](https://github.com/krizhnaa) in [#5471](https://github.com/Stirling-Tools/Stirling-PDF/pull/5471)
- Libre threads by [@Frooodle](https://github.com/Frooodle) in [#5303](https://github.com/Stirling-Tools/Stirling-PDF/pull/5303)

##### Docker Updates

- build(deps): bump docker/setup-qemu-action from 3.6.0 to 3.7.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5326](https://github.com/Stirling-Tools/Stirling-PDF/pull/5326)
- build(deps): bump step-security/harden-runner from 2.12.1 to 2.14.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5324](https://github.com/Stirling-Tools/Stirling-PDF/pull/5324)
- ci(build): scope Docker layer cache per artifact to avoid cross-contamination by [@Ludy87](https://github.com/Ludy87) in [#5453](https://github.com/Stirling-Tools/Stirling-PDF/pull/5453)
- build(deps): bump alpine from 3.22.2 to 3.23.2 in /docker/backend by [@dependabot](https://github.com/dependabot)\[bot] in [#5316](https://github.com/Stirling-Tools/Stirling-PDF/pull/5316)
- build(deps): bump alpine from 3.22.1 to 3.23.2 in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5319](https://github.com/Stirling-Tools/Stirling-PDF/pull/5319)
- build(deps): bump debian from `1c25564` to `449673e` in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5357](https://github.com/Stirling-Tools/Stirling-PDF/pull/5357)
- build(deps): bump docker/setup-buildx-action from 3.11.1 to 3.12.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5463](https://github.com/Stirling-Tools/Stirling-PDF/pull/5463)
- Docker use latest libreoffice and fonts by [@Frooodle](https://github.com/Frooodle) in [#5482](https://github.com/Stirling-Tools/Stirling-PDF/pull/5482)

##### Translation Changes

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5462](https://github.com/Stirling-Tools/Stirling-PDF/pull/5462)

##### Other Changes

- fix(ci): read workflow\_dispatch PR number from inputs.pr in PR auto-deploy workflow by [@Ludy87](https://github.com/Ludy87) in [#5380](https://github.com/Stirling-Tools/Stirling-PDF/pull/5380)
- build(deps): bump github/codeql-action from 4.31.5 to 4.31.10 by [@dependabot](https://github.com/dependabot)\[bot] in [#5449](https://github.com/Stirling-Tools/Stirling-PDF/pull/5449)
- build(deps): bump pypdf from 6.4.0 to 6.6.0 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5422](https://github.com/Stirling-Tools/Stirling-PDF/pull/5422)
- build(deps): bump io.micrometer:micrometer-core from 1.16.0 to 1.16.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5358](https://github.com/Stirling-Tools/Stirling-PDF/pull/5358)
- Update user login conditions in workflow by [@Frooodle](https://github.com/Frooodle) in [#5457](https://github.com/Stirling-Tools/Stirling-PDF/pull/5457)
- fix(core): reinstall frontend dependencies when iconify package is missing by [@Ludy87](https://github.com/Ludy87) in [#5432](https://github.com/Stirling-Tools/Stirling-PDF/pull/5432)
- fix(translations): improve translation merger CLI and sync missing UI strings across locales by [@Ludy87](https://github.com/Ludy87) in [#5309](https://github.com/Stirling-Tools/Stirling-PDF/pull/5309)
- build(deps): bump urllib3 from 2.5.0 to 2.6.3 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5456](https://github.com/Stirling-Tools/Stirling-PDF/pull/5456)
- build(deps): bump docker/login-action from 3.4.0 to 3.6.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5464](https://github.com/Stirling-Tools/Stirling-PDF/pull/5464)

##### New Contributors

- [@krizhnaa](https://github.com/krizhnaa) made their first contribution in [#5471](https://github.com/Stirling-Tools/Stirling-PDF/pull/5471)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.2.1...v2.3.0>

---
##### [\`2.2.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.2.1)

<!-- Release notes generated using configuration in .github/release.yml at main -->

This release has:

- Possible fix for selfhost connection issues from desktop app
- custom OCR languages fix
- hide login options based on selec…
renovate bot added a commit to sdwilsh/ansible-playbooks that referenced this pull request Mar 9, 2026
… docker tag to v2

##### [\`2.7.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.0)

Lots of changes in this release yet again!

App:

- option to hide google drive and mobile upload when disabled in 'my files' view
- New search bar to search settings menu easily
- Auditing has improved, new filehash/author options are supported with better reporting overall (We recommend enterprise users to backup their Stirling database before updating to be safe, although expect no issues)

Desktop:

- Desktop app correctly returns to its previous window state and location as its previous launch
- Desktop app supports OS notifications if it finishes working on tasks whilst minimised

Bugs fixed:

- Pipeline erroring in merge tool and others based on parameters
- Certification signature stamps not showing correctly in the viewer
- English was being enabled even when it was disabled in settings

#### What's Changed

##### Enhancements

- settings menu reworks by [@Frooodle](https://github.com/Frooodle) in [#5864](https://github.com/Stirling-Tools/Stirling-PDF/pull/5864)

##### Minor Enhancements

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5775](https://github.com/Stirling-Tools/Stirling-PDF/pull/5775)
- Persist Tauri window state between launches by [@Frooodle](https://github.com/Frooodle) in [#5871](https://github.com/Stirling-Tools/Stirling-PDF/pull/5871)
- tauri notifications by [@Frooodle](https://github.com/Frooodle) in [#5875](https://github.com/Stirling-Tools/Stirling-PDF/pull/5875)
- Audit fixes and improvements by [@Frooodle](https://github.com/Frooodle) in [#5835](https://github.com/Stirling-Tools/Stirling-PDF/pull/5835)
- fix: merge pdf pipeline validation by [@RenzoMXD](https://github.com/RenzoMXD) in [#5799](https://github.com/Stirling-Tools/Stirling-PDF/pull/5799)
- Fix signatures not showing by [@ConnorYoh](https://github.com/ConnorYoh) in [#5872](https://github.com/Stirling-Tools/Stirling-PDF/pull/5872)
- Add the production billing portal link for static plan page by [@ConnorYoh](https://github.com/ConnorYoh) in [#5860](https://github.com/Stirling-Tools/Stirling-PDF/pull/5860)
- option to hide google drive and add settings by [@Frooodle](https://github.com/Frooodle) in [#5863](https://github.com/Stirling-Tools/Stirling-PDF/pull/5863)
- stop enabling english by [@Frooodle](https://github.com/Frooodle) in [#5874](https://github.com/Stirling-Tools/Stirling-PDF/pull/5874)
- Add searchable settings selector to AppConfigModal and improve nav behavior by [@Frooodle](https://github.com/Frooodle) in [#5873](https://github.com/Stirling-Tools/Stirling-PDF/pull/5873)

##### Docker Updates

- build(deps): bump actions/setup-node from 4.4.0 to 6.2.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5691](https://github.com/Stirling-Tools/Stirling-PDF/pull/5691)

##### Other Changes

- Don't build mac if you don't have the secrets by [@ConnorYoh](https://github.com/ConnorYoh) in [#5861](https://github.com/Stirling-Tools/Stirling-PDF/pull/5861)
- build(deps): bump digicert/ssm-code-signing from 1.2.0 to 1.2.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5692](https://github.com/Stirling-Tools/Stirling-PDF/pull/5692)
- build(deps): bump pypdf from 6.7.4 to 6.7.5 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5853](https://github.com/Stirling-Tools/Stirling-PDF/pull/5853)
- translations and version bump by [@Frooodle](https://github.com/Frooodle) in [#5878](https://github.com/Stirling-Tools/Stirling-PDF/pull/5878)

#### New Contributors

- [@RenzoMXD](https://github.com/RenzoMXD) made their first contribution in [#5799](https://github.com/Stirling-Tools/Stirling-PDF/pull/5799)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.6.0...v2.7.0>

---
##### [\`2.6.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.6.0)

In this update, we have drastically improved Stirling PDFs memory usage and startup performance in our testing you should see around a 30% reduction in both idle usage and startup speed
We have also dramatically reduced the filesize of the docker by 30-40%

Breaking updates:
No longer supporting JDK 17, we have moved to JDK 21-25 and are recommending all jar installs to upgrade to JDK 25 for best performance

Other updates

- Desktop now supports running non installed tools by optionally connecting to Stirling cloud server IF a user chooses to and is already running via login to cloud
- Several dependencies have been updated
- Security patches

Bug fixes

- Health check failing under certain auth scenarios
- Crop not working for desktop

#### What's Changed

##### Enhancements

- feat(docker): update base images to Java 25, Spring 4, Jackson 3, Gradle 9 and optimize JVM options (Project Lilliput) by [@balazs-szucs](https://github.com/balazs-szucs) in [#5725](https://github.com/Stirling-Tools/Stirling-PDF/pull/5725)
- feat(annotation): add moveAnnotation API for efficient repositioning of annotations, and bump embed to 2.7.0 by [@balazs-szucs](https://github.com/balazs-szucs) in [#5809](https://github.com/Stirling-Tools/Stirling-PDF/pull/5809)
- feat(conversion): switch PDF input engine to pdftohtml for improved performance and reduced dependencies by [@balazs-szucs](https://github.com/balazs-szucs) in [#5820](https://github.com/Stirling-Tools/Stirling-PDF/pull/5820)
- feat(aot): add aot-diagnostics.sh for AOT cache diagnostics and validation by [@balazs-szucs](https://github.com/balazs-szucs) in [#5848](https://github.com/Stirling-Tools/Stirling-PDF/pull/5848)

##### Minor Enhancements

- Update frontend minor package versions by [@jbrunton96](https://github.com/jbrunton96) in [#5787](https://github.com/Stirling-Tools/Stirling-PDF/pull/5787)
- Sync up Tauri versions by [@jbrunton96](https://github.com/jbrunton96) in [#5789](https://github.com/Stirling-Tools/Stirling-PDF/pull/5789)
- zip and response issues by [@Frooodle](https://github.com/Frooodle) in [#5786](https://github.com/Stirling-Tools/Stirling-PDF/pull/5786)
- Change to use dpdm for circular import scanning by [@jbrunton96](https://github.com/jbrunton96) in [#5788](https://github.com/Stirling-Tools/Stirling-PDF/pull/5788)
- Cachefixing test by [@Frooodle](https://github.com/Frooodle) in [#5793](https://github.com/Stirling-Tools/Stirling-PDF/pull/5793)
- Desktop connection SaaS: config, billing, team support by [@ConnorYoh](https://github.com/ConnorYoh) in [#5768](https://github.com/Stirling-Tools/Stirling-PDF/pull/5768)
- Switch to use ESLint 10 by [@jbrunton96](https://github.com/jbrunton96) in [#5794](https://github.com/Stirling-Tools/Stirling-PDF/pull/5794)
- cleanups by [@Frooodle](https://github.com/Frooodle) in [#5795](https://github.com/Stirling-Tools/Stirling-PDF/pull/5795)
- DocumentBuilderFactory limiting by [@Frooodle](https://github.com/Frooodle) in [#5797](https://github.com/Stirling-Tools/Stirling-PDF/pull/5797)
- lint by [@reecebrowne](https://github.com/reecebrowne) in [#5802](https://github.com/Stirling-Tools/Stirling-PDF/pull/5802)
- Harden shared signature endpoints  by [@Frooodle](https://github.com/Frooodle) in [#5806](https://github.com/Stirling-Tools/Stirling-PDF/pull/5806)
- open-saml bumps by [@Frooodle](https://github.com/Frooodle) in [#5805](https://github.com/Stirling-Tools/Stirling-PDF/pull/5805)
- fix split cuased by defaultParameters breaking dynamic endpoint tools by [@Frooodle](https://github.com/Frooodle) in [#5838](https://github.com/Stirling-Tools/Stirling-PDF/pull/5838)
- hardening by [@Frooodle](https://github.com/Frooodle) in [#5807](https://github.com/Stirling-Tools/Stirling-PDF/pull/5807)
- Fix health status checks falling under mettric flag by [@Frooodle](https://github.com/Frooodle) in [#5821](https://github.com/Stirling-Tools/Stirling-PDF/pull/5821)
- Frontend and Desktop audit fixes by [@ConnorYoh](https://github.com/ConnorYoh) in [#5840](https://github.com/Stirling-Tools/Stirling-PDF/pull/5840)
- refactor(merge,split,json): adopt streaming approach and standardize types, address gradle warnings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5803](https://github.com/Stirling-Tools/Stirling-PDF/pull/5803)
- fallback for /api/v1/config/endpoints-availability by [@ConnorYoh](https://github.com/ConnorYoh) in [#5842](https://github.com/Stirling-Tools/Stirling-PDF/pull/5842)
- Add check for ghostscript before plowing on with removeDataOutsideCrop by [@ConnorYoh](https://github.com/ConnorYoh) in [#5845](https://github.com/Stirling-Tools/Stirling-PDF/pull/5845)
- Fix split tooltips by [@reecebrowne](https://github.com/reecebrowne) in [#5847](https://github.com/Stirling-Tools/Stirling-PDF/pull/5847)

##### Docker Updates

- disable other dockers by [@Frooodle](https://github.com/Frooodle) in [#5792](https://github.com/Stirling-Tools/Stirling-PDF/pull/5792)
- docker cache fix by [@Frooodle](https://github.com/Frooodle) in [#5801](https://github.com/Stirling-Tools/Stirling-PDF/pull/5801)
- \[Aikido] AI Fix for 3rd party Github Actions should be pinned by [@aikido-autofix](https://github.com/aikido-autofix)\[bot] in [#5817](https://github.com/Stirling-Tools/Stirling-PDF/pull/5817)
- fix(aot): use Spring Boot exploded layer format for aot cache by [@balazs-szucs](https://github.com/balazs-szucs) in [#5811](https://github.com/Stirling-Tools/Stirling-PDF/pull/5811)
- \[StepSecurity] Apply security best practices by [@step-security-bot](https://github.com/step-security-bot) in [#5830](https://github.com/Stirling-Tools/Stirling-PDF/pull/5830)
- tauri jdk25 and docs by [@Frooodle](https://github.com/Frooodle) in [#5814](https://github.com/Stirling-Tools/Stirling-PDF/pull/5814)

##### Development Tools

- build(deps): bump ajv from 8.17.1 to 8.18.0 in /devTools in the npm\_and\_yarn group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5774](https://github.com/Stirling-Tools/Stirling-PDF/pull/5774)
- build(deps-dev): bump stylelint from 16.26.1 to 17.4.0 in /devTools by [@dependabot](https://github.com/dependabot)\[bot] in [#5822](https://github.com/Stirling-Tools/Stirling-PDF/pull/5822)

##### Other Changes

- build(deps-dev): bump pillow from 12.1.0 to 12.1.1 in /.github/scripts in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5720](https://github.com/Stirling-Tools/Stirling-PDF/pull/5720)
- build(deps): bump pillow from 12.1.0 to 12.1.1 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5719](https://github.com/Stirling-Tools/Stirling-PDF/pull/5719)
- deps by [@Frooodle](https://github.com/Frooodle) in [#5796](https://github.com/Stirling-Tools/Stirling-PDF/pull/5796)
- chore(deps): update dependencies for security by [@balazs-szucs](https://github.com/balazs-szucs) in [#5813](https://github.com/Stirling-Tools/Stirling-PDF/pull/5813)
- ci: provide default desktop env vars in tauri GitHub Actions builds by [@Frooodle](https://github.com/Frooodle) in [#5815](https://github.com/Stirling-Tools/Stirling-PDF/pull/5815)
- skip certs by [@Frooodle](https://github.com/Frooodle) in [#5819](https://github.com/Stirling-Tools/Stirling-PDF/pull/5819)
- build(deps): bump pypdf from 6.6.2 to 6.7.4 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5825](https://github.com/Stirling-Tools/Stirling-PDF/pull/5825)
- build(deps): bump github/codeql-action from 4.31.10 to 4.32.4 by [@dependabot](https://github.com/dependabot)\[bot] in [#5833](https://github.com/Stirling-Tools/Stirling-PDF/pull/5833)
- build(deps): bump actions/ai-inference from 2.0.5 to 2.0.7 by [@dependabot](https://github.com/dependabot)\[bot] in [#5831](https://github.com/Stirling-Tools/Stirling-PDF/pull/5831)
- build(deps): bump com.sun.xml.bind:jaxb-core from 2.3.0.1 to 4.0.6 by [@dependabot](https://github.com/dependabot)\[bot] in [#5365](https://github.com/Stirling-Tools/Stirling-PDF/pull/5365)

#### New Contributors

- [@aikido-autofix](https://github.com/aikido-autofix)\[bot] made their first contribution in [#5817](https://github.com/Stirling-Tools/Stirling-PDF/pull/5817)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.3...v2.6.0>

---
##### [\`2.5.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.3)

This release contains:

- New feature for XLSX conversion
- New feature for splitting a page into printable chunks (a3 into 2 a4 etc for posters)
- Keyboard shortcut support for the viewer
- Bug fixes for some viewer issues
- Bug fix for cookie consent showing on desktop builds

#### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@intelliking](https://github.com/intelliking) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

#### New Contributors

- [@intelliking](https://github.com/intelliking) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

<!-- Release notes generated using configuration in .github/release.yml at v2.5.3 -->

#### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@statxc](https://github.com/statxc) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

#### New Contributors

- [@statxc](https://github.com/statxc) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

<!-- Release notes generated using configuration in .github/release.yml at v2.5.3 -->

#### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@statxc](https://github.com/statxc) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

#### New Contributors

- [@statxc](https://github.com/statxc) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

---
##### [\`2.5.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.2)

This is a release for

- Security improvements
- Ruler / Measure support in the viewer
  Bug fixes for:
- writing to forms not working on OSS (package now moved fully to OSS)
- Possible fix for mac desktop issues
- desktop not being detected as desktop all the time
- license checks not having a retry
- desktop having wrong publisher ID

#### What's Changed

##### Enhancements

- Add plist file for Mac permissions by [@jbrunton96](https://github.com/jbrunton96) in [#5756](https://github.com/Stirling-Tools/Stirling-PDF/pull/5756)

##### Minor Enhancements

- ruler support by [@Frooodle](https://github.com/Frooodle) in [#5758](https://github.com/Stirling-Tools/Stirling-PDF/pull/5758)
- fix publishing for tauri author by [@Frooodle](https://github.com/Frooodle) in [#5757](https://github.com/Stirling-Tools/Stirling-PDF/pull/5757)
- dos fixes by [@Frooodle](https://github.com/Frooodle) in [#5759](https://github.com/Stirling-Tools/Stirling-PDF/pull/5759)
- licensere reTry by [@Frooodle](https://github.com/Frooodle) in [#5763](https://github.com/Stirling-Tools/Stirling-PDF/pull/5763)
- authclient by [@Frooodle](https://github.com/Frooodle) in [#5761](https://github.com/Stirling-Tools/Stirling-PDF/pull/5761)
- zipFix by [@Frooodle](https://github.com/Frooodle) in [#5762](https://github.com/Stirling-Tools/Stirling-PDF/pull/5762)
- Update de translation.toml by [@Hugomaulwurf76](https://github.com/Hugomaulwurf76) in [#5736](https://github.com/Stirling-Tools/Stirling-PDF/pull/5736)
- Translate various terms in Italian localization by [@albanobattistella](https://github.com/albanobattistella) in [#5749](https://github.com/Stirling-Tools/Stirling-PDF/pull/5749)
- Move Forms location by [@Frooodle](https://github.com/Frooodle) in [#5769](https://github.com/Stirling-Tools/Stirling-PDF/pull/5769)
- translations ai (please override as you see fit in new PRs these are placeholder) by [@Frooodle](https://github.com/Frooodle) in [#5770](https://github.com/Stirling-Tools/Stirling-PDF/pull/5770)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5675](https://github.com/Stirling-Tools/Stirling-PDF/pull/5675)

##### Other Changes

- build(tauri): enforce Java 17+ requirement in Windows jlink build script by [@Ludy87](https://github.com/Ludy87) in [#5684](https://github.com/Stirling-Tools/Stirling-PDF/pull/5684)

#### New Contributors

- [@Hugomaulwurf76](https://github.com/Hugomaulwurf76) made their first contribution in [#5736](https://github.com/Stirling-Tools/Stirling-PDF/pull/5736)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.1...v2.5.2>

---
##### [\`2.5.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.1)

Several bug fixes in this release

- Login issues showing "something went wrong" when language list = 1
- Forms not showing correctly
- Forms not working on desktop
- Desktop SSO redirect race condition issues
- 431 error for large endpoint for endpoints available

#### What's Changed

##### Minor Enhancements

- Fix SAML login "something went wrong" when language list = 1  by [@Frooodle](https://github.com/Frooodle) in [#5750](https://github.com/Stirling-Tools/Stirling-PDF/pull/5750)
- fix(forms): Update form field UI and behavior for better interactivity and alignment by [@balazs-szucs](https://github.com/balazs-szucs) in [#5747](https://github.com/Stirling-Tools/Stirling-PDF/pull/5747)
- fixes for desktop SSO by [@Frooodle](https://github.com/Frooodle) in [#5751](https://github.com/Stirling-Tools/Stirling-PDF/pull/5751)
- large query reduction by [@Frooodle](https://github.com/Frooodle) in [#5754](https://github.com/Stirling-Tools/Stirling-PDF/pull/5754)
- fix(form-fill): fix hardcoded response by [@balazs-szucs](https://github.com/balazs-szucs) in [#5755](https://github.com/Stirling-Tools/Stirling-PDF/pull/5755)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.0...v2.5.1>

---
##### [\`2.5.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.0)

This is a big update with lots of new functionality and changes like Form fill and redaction/annotation improvements! Also several changes around the login session expiry
Special thanks to [@balazs-szucs](https://github.com/balazs-szucs), who put a lot of work into this release!

New functionality:

- Huge manual redaction changes with colour selection and improved UI
- Add attachment support with sidebar button for viewing attachments etc (Seen in viewer mode)
- FormFill tool with context and UI components for PDF form filling
- Desktop now edits files that have been openned instead of creating new copies
- Extra JWT settings to customise expiry times for desktop and browser
- Add/remove link support

Extra improvements:

- Text selection improvements within the viewer with custom actions
- Improved link handling and link location
- EmbedPDF 2.6.0 upgrade for several bug fixes
- Multiple fixes with the viewer, its functionality, and its export
- PDF Text editor cache / JSON size issues
- Enhanced JWT handling and refreshing for better session management without forced re-logins
- Improved annotation UI
- Files correctly open in the viewer automatically if only 1 file is opened
- Improved tool disable menu to be able to disable all remaining tools and docs

#### What's Changed

##### Enhancements

- feat(redaction): improve manual redaction with color selection and updated UI elements by [@balazs-szucs](https://github.com/balazs-szucs) in [#5679](https://github.com/Stirling-Tools/Stirling-PDF/pull/5679)
- feat(text-selection): implement text selection enhancement for double and triple-click actions by [@balazs-szucs](https://github.com/balazs-szucs) in [#5712](https://github.com/Stirling-Tools/Stirling-PDF/pull/5712)
- feat(linklayer): improve link handling with pdf-lib integration and add link toolbar, add delete link functionality by [@balazs-szucs](https://github.com/balazs-szucs) in [#5715](https://github.com/Stirling-Tools/Stirling-PDF/pull/5715)
- feat(attachments): add attachment support with sidebar and API integration by [@balazs-szucs](https://github.com/balazs-szucs) in [#5673](https://github.com/Stirling-Tools/Stirling-PDF/pull/5673)
- feat(form-fill): FormFill tool with context and UI components for PDF form filling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5711](https://github.com/Stirling-Tools/Stirling-PDF/pull/5711)
- feat(frontend): Upgrade embedPDF to v2.6.0 and migrate to pdf-lib fork, fix attachment/bookmark panel by [@balazs-szucs](https://github.com/balazs-szucs) in [#5723](https://github.com/Stirling-Tools/Stirling-PDF/pull/5723)

##### Minor Enhancements

- Update translation by [@albanobattistella](https://github.com/albanobattistella) in [#5670](https://github.com/Stirling-Tools/Stirling-PDF/pull/5670)
- various  viewer pill fixes by [@reecebrowne](https://github.com/reecebrowne) in [#5714](https://github.com/Stirling-Tools/Stirling-PDF/pull/5714)
- Fix viewer export by [@reecebrowne](https://github.com/reecebrowne) in [#5713](https://github.com/Stirling-Tools/Stirling-PDF/pull/5713)
- fix tool disabling for docs and others by [@Frooodle](https://github.com/Frooodle) in [#5722](https://github.com/Stirling-Tools/Stirling-PDF/pull/5722)
- Preserve local paths for desktop saves by [@Frooodle](https://github.com/Frooodle) in [#5543](https://github.com/Stirling-Tools/Stirling-PDF/pull/5543)
- refactor(api): replace regex string literals with Pattern instances for improved performance and readability by [@balazs-szucs](https://github.com/balazs-szucs) in [#5680](https://github.com/Stirling-Tools/Stirling-PDF/pull/5680)
- refactor: fix homepage file upload path by [@Frooodle](https://github.com/Frooodle) in [#5738](https://github.com/Stirling-Tools/Stirling-PDF/pull/5738)
- PDF Text editor changes by [@Frooodle](https://github.com/Frooodle) in [#5726](https://github.com/Stirling-Tools/Stirling-PDF/pull/5726)
- fix\_env\_files\_for\_tauri by [@ConnorYoh](https://github.com/ConnorYoh) in [#5741](https://github.com/Stirling-Tools/Stirling-PDF/pull/5741)
- JWT enhancements for desktop by [@Frooodle](https://github.com/Frooodle) in [#5742](https://github.com/Stirling-Tools/Stirling-PDF/pull/5742)
- Chore/v2/improve annotation UI by [@reecebrowne](https://github.com/reecebrowne) in [#5724](https://github.com/Stirling-Tools/Stirling-PDF/pull/5724)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.6...v2.5.0>

---
##### [\`2.4.6\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.6)

Several bug fixes for the issues:

- License not always correctly loading due to cache issues
- public endpoints not always accessible when without JWT
- Language not always correctly taking the server's default
- Desktop issues for SAML SSO
- maxFileSize server setting not being handled correctly

As well as

- SSO cleanups
- Extra SSO logging for future issues
- markdown conversion now supports images

#### What's Changed

##### Breaking Changes

- fix(markdown): markdown conversion image handling and zip support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5677](https://github.com/Stirling-Tools/Stirling-PDF/pull/5677)

##### Enhancements

- Enhance SSO SAML in desktop app by [@jbrunton96](https://github.com/jbrunton96) in [#5705](https://github.com/Stirling-Tools/Stirling-PDF/pull/5705)

##### Minor Enhancements

- Fix maxFileSize environment variable support ([#5542](https://github.com/Stirling-Tools/Stirling-PDF/issues/5542)) by [@Eruis2579](https://github.com/Eruis2579) in [#5655](https://github.com/Stirling-Tools/Stirling-PDF/pull/5655)
- Bug fixing and debugs by [@Frooodle](https://github.com/Frooodle) in [#5704](https://github.com/Stirling-Tools/Stirling-PDF/pull/5704)
- fix(api): address potential backend resource leaks and improve frontend accessibility by [@balazs-szucs](https://github.com/balazs-szucs) in [#5678](https://github.com/Stirling-Tools/Stirling-PDF/pull/5678)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5668](https://github.com/Stirling-Tools/Stirling-PDF/pull/5668)
- build(deps): bump com.diffplug.spotless from 8.1.0 to 8.2.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5592](https://github.com/Stirling-Tools/Stirling-PDF/pull/5592)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.5...v2.4.6>

---
##### [\`2.4.5\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.5)

Desktop changes

- Windows desktop MSI to support headless installation with custom parameters to set up server URL and login mode, an example for this would be `msiexec /i "Stirling-PDF-windows-x86_64.msi
  " /qn STIRLING_SERVER_URL="http://192.168.1.53:2357/" STIRLING_LOCK_CONNECTION=1`

`STIRLING_SERVER_URL` auto sets the URL and `STIRLING_LOCK_CONNECTION=1` sets the connection mode to be ONLY self-host server, ensuring no mistaken connections to external servers. Please note this feature is currently in testing, if you have feedback or have tried it please let us know! (Even if it worked perfectly its good to know!)

- SSO UI changes
- support for login method restrictions in desktop
- remembers last entered selfhost URL for easy reconnection

General changes

- SSO functionality cleanups (a few more to come soon!)
- New strict mode for PDF/A conversion for issues were conversation isn't perfect
- redaction improvements

Bug fixes

- SSO auto login mode now working correctly

#### What's Changed

##### Enhancements

- feat:(pdfa-conversion) Implement Strict PDF/A Mode with Verification by [@balazs-szucs](https://github.com/balazs-szucs) in [#5663](https://github.com/Stirling-Tools/Stirling-PDF/pull/5663)
- feat(desktop): show and reuse last used server URL in Setup Wizard by [@Ludy87](https://github.com/Ludy87) in [#5659](https://github.com/Stirling-Tools/Stirling-PDF/pull/5659)
- feat(redaction): update to embedPDF v2.4.0 with unified redaction mode support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5652](https://github.com/Stirling-Tools/Stirling-PDF/pull/5652)

##### Minor Enhancements

- Saml fix by [@Frooodle](https://github.com/Frooodle) in [#5651](https://github.com/Stirling-Tools/Stirling-PDF/pull/5651)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5618](https://github.com/Stirling-Tools/Stirling-PDF/pull/5618)
- fix(frontend): improve synonym search by [@Ludy87](https://github.com/Ludy87) in [#5639](https://github.com/Stirling-Tools/Stirling-PDF/pull/5639)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5666](https://github.com/Stirling-Tools/Stirling-PDF/pull/5666)
- Headless windows installer by [@Frooodle](https://github.com/Frooodle) in [#5664](https://github.com/Stirling-Tools/Stirling-PDF/pull/5664)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5669](https://github.com/Stirling-Tools/Stirling-PDF/pull/5669)
- SSO styling changes  by [@Frooodle](https://github.com/Frooodle) in [#5671](https://github.com/Stirling-Tools/Stirling-PDF/pull/5671)

##### Docker Updates

- build(deps): bump alpine from 3.23.2 to 3.23.3 in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5590](https://github.com/Stirling-Tools/Stirling-PDF/pull/5590)
- chore(ci): update GitHub Actions to latest stable versions by [@Ludy87](https://github.com/Ludy87) in [#5629](https://github.com/Stirling-Tools/Stirling-PDF/pull/5629)

##### Translation Changes

- chore(ci): improve language TOML check output with fixer guidance by [@Ludy87](https://github.com/Ludy87) in [#5638](https://github.com/Stirling-Tools/Stirling-PDF/pull/5638)
- chore(ci): refine pre-commit workflows, add TOML sorting by [@Ludy87](https://github.com/Ludy87) in [#5648](https://github.com/Stirling-Tools/Stirling-PDF/pull/5648)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5667](https://github.com/Stirling-Tools/Stirling-PDF/pull/5667)

##### Development Tools

- chore(vscode): replace deprecated Copilot extension with Copilot Chat by [@Ludy87](https://github.com/Ludy87) in [#5662](https://github.com/Stirling-Tools/Stirling-PDF/pull/5662)

##### Other Changes

- build(deps): bump io.swagger.core.v3:swagger-core-jakarta from 2.2.41 to 2.2.42 by [@dependabot](https://github.com/dependabot)\[bot] in [#5549](https://github.com/Stirling-Tools/Stirling-PDF/pull/5549)
- build(deps): bump org.postgresql:postgresql from 42.7.8 to 42.7.9 by [@dependabot](https://github.com/dependabot)\[bot] in [#5554](https://github.com/Stirling-Tools/Stirling-PDF/pull/5554)
- fix(build): define repositories to resolve test classpath dependencies by [@Ludy87](https://github.com/Ludy87) in [#5650](https://github.com/Stirling-Tools/Stirling-PDF/pull/5650)
- tauri comments by [@Frooodle](https://github.com/Frooodle) in [#5634](https://github.com/Stirling-Tools/Stirling-PDF/pull/5634)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.4...v2.4.5>

---
##### [\`2.4.4\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.4)

Quick fix for page editor bug causes multi-page selection issues

This release also contains

- Italian translations
- Bates stamping functionality to add page numbers
- Extract bookmarks API fix
- Diagnostics command in CLI for easy error reporting (grabs logs into a zip on request for you to view)

#### What's Changed

##### Enhancements

- feat(i18n): add missing compare placeholder and stamp label translations by [@Ludy87](https://github.com/Ludy87) in [#5636](https://github.com/Stirling-Tools/Stirling-PDF/pull/5636)

##### Minor Enhancements

- update to add optional Zero Padding to page numbers (Bates Stamping).… by [@mrober01](https://github.com/mrober01) in [#5612](https://github.com/Stirling-Tools/Stirling-PDF/pull/5612)
- Fix ClassCastException in extractBookmarks endpoint ([#5578](https://github.com/Stirling-Tools/Stirling-PDF/issues/5578)) by [@Eruis2579](https://github.com/Eruis2579) in [#5604](https://github.com/Stirling-Tools/Stirling-PDF/pull/5604)
- Bug/page editor additional fixes by [@reecebrowne](https://github.com/reecebrowne) in [#5660](https://github.com/Stirling-Tools/Stirling-PDF/pull/5660)
- Updated Italian translation by [@albanobattistella](https://github.com/albanobattistella) in [#5637](https://github.com/Stirling-Tools/Stirling-PDF/pull/5637)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5642](https://github.com/Stirling-Tools/Stirling-PDF/pull/5642)

##### Other Changes

- diagnostic script by [@Frooodle](https://github.com/Frooodle) in [#5646](https://github.com/Stirling-Tools/Stirling-PDF/pull/5646)

#### New Contributors

- [@mrober01](https://github.com/mrober01) made their first contribution in [#5612](https://github.com/Stirling-Tools/Stirling-PDF/pull/5612)
- [@Eruis2579](https://github.com/Eruis2579) made their first contribution in [#5604](https://github.com/Stirling-Tools/Stirling-PDF/pull/5604)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.3...v2.4.4>

---
##### [\`2.4.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.3)

Big desktop release today, full of fixes as well as other changes!

- Correctly show desktop and server versioning separately
- Support for watched folders to be recursive and multiple directories to be defined
- Desktop login expiry fix
- Desktop self-host connection improvements (self-sign fixes and others)
- Page editor performance and UI improvements
- frontend error screen appearing during SSO fix
- Desktop CORS fixes

#### What's Changed

##### Enhancements

- feat(settings): display frontend/backend versions and warn on client-server mismatch by [@Ludy87](https://github.com/Ludy87) in [#5571](https://github.com/Stirling-Tools/Stirling-PDF/pull/5571)
- Support multiple pipeline watch directories and configurable pipeline base path by [@Frooodle](https://github.com/Frooodle) in [#5545](https://github.com/Stirling-Tools/Stirling-PDF/pull/5545)

##### Minor Enhancements

- Stop type checking TypeScript files that won't be run by [@jbrunton96](https://github.com/jbrunton96) in [#5607](https://github.com/Stirling-Tools/Stirling-PDF/pull/5607)
- Fixed missing AuthnRequest bug by [@DarioGii](https://github.com/DarioGii) in [#5606](https://github.com/Stirling-Tools/Stirling-PDF/pull/5606)
- Update links to Docs by [@numanair](https://github.com/numanair) in [#5611](https://github.com/Stirling-Tools/Stirling-PDF/pull/5611)
- fix(frontend): prevent hydration errors in admin security form and improve autofill support by [@Ludy87](https://github.com/Ludy87) in [#5613](https://github.com/Stirling-Tools/Stirling-PDF/pull/5613)
- fix(auth): align token refresh handling with updated backend response by [@Ludy87](https://github.com/Ludy87) in [#5609](https://github.com/Stirling-Tools/Stirling-PDF/pull/5609)
- always allow tauri cors by [@Frooodle](https://github.com/Frooodle) in [#5616](https://github.com/Stirling-Tools/Stirling-PDF/pull/5616)
- Bug/pageeditor virtualisation by [@reecebrowne](https://github.com/reecebrowne) in [#5614](https://github.com/Stirling-Tools/Stirling-PDF/pull/5614)
- Stop attempting to refresh Spring tokens in desktop by [@Frooodle](https://github.com/Frooodle) in [#5610](https://github.com/Stirling-Tools/Stirling-PDF/pull/5610)

##### Other Changes

- Update Python dependencies in requirements files by [@Ludy87](https://github.com/Ludy87) in [#5627](https://github.com/Stirling-Tools/Stirling-PDF/pull/5627)
- Pin GitHub Actions and add runner hardening by [@Ludy87](https://github.com/Ludy87) in [#5628](https://github.com/Stirling-Tools/Stirling-PDF/pull/5628)

#### New Contributors

- [@numanair](https://github.com/numanair) made their first contribution in [#5611](https://github.com/Stirling-Tools/Stirling-PDF/pull/5611)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.2...v2.4.3>

---
##### [\`2.4.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.2)

This is a quick update including

- Fixes for Audit display failing under certain scenarios
- Fix for tools not being correctly disabled via disable-endpoints settings
- Text editor font rendering fixes
- New Variables for Stamp PDF feature!

#### What's Changed

##### Enhancements

- feat(stamp): add dynamic variables and templates for stamp text customization by [@balazs-szucs](https://github.com/balazs-szucs) in [#5546](https://github.com/Stirling-Tools/Stirling-PDF/pull/5546)

##### Minor Enhancements

- Fix tool disabling by [@Frooodle](https://github.com/Frooodle) in [#5585](https://github.com/Stirling-Tools/Stirling-PDF/pull/5585)
- Fix Audit & Usage Analytics Sections by [@DarioGii](https://github.com/DarioGii) in [#5586](https://github.com/Stirling-Tools/Stirling-PDF/pull/5586)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5538](https://github.com/Stirling-Tools/Stirling-PDF/pull/5538)

##### Other Changes

- fix: PDF Text Editor file open by [@bittoby](https://github.com/bittoby) in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

#### New Contributors

- [@bittoby](https://github.com/bittoby) made their first contribution in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.1...v2.4.2>

<!-- Release notes generated using configuration in .github/release.yml at v2.4.2 -->

#### What's Changed

##### Enhancements

- feat(stamp): add dynamic variables and templates for stamp text customization by [@balazs-szucs](https://github.com/balazs-szucs) in [#5546](https://github.com/Stirling-Tools/Stirling-PDF/pull/5546)

##### Minor Enhancements

- Fix tool disabling by [@Frooodle](https://github.com/Frooodle) in [#5585](https://github.com/Stirling-Tools/Stirling-PDF/pull/5585)
- Fix Audit & Usage Analytics Sections by [@DarioGii](https://github.com/DarioGii) in [#5586](https://github.com/Stirling-Tools/Stirling-PDF/pull/5586)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5538](https://github.com/Stirling-Tools/Stirling-PDF/pull/5538)

##### Other Changes

- fix: PDF Text Editor file open by [@bittoby](https://github.com/bittoby) in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

#### New Contributors

- [@bittoby](https://github.com/bittoby) made their first contribution in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.1...v2.4.2>

---
##### [\`2.4.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.1)

Lots of bug fixes today!
Fix for HTTPS connection for desktop mode
Xframe option now in settings.yml and options menu for iframe support
Various other bug fixes and dependencies updates!
Mac desktop not starting correctly

#### What's Changed

##### Enhancements

- deps(frontend, tauri): update Tauri, Rust crates, and frontend dependencies by [@Ludy87](https://github.com/Ludy87) in [#5569](https://github.com/Stirling-Tools/Stirling-PDF/pull/5569)

##### Minor Enhancements

- pipeline fixes for naming issues  by [@Frooodle](https://github.com/Frooodle) in [#5570](https://github.com/Stirling-Tools/Stirling-PDF/pull/5570)
- xframe fix new by [@Frooodle](https://github.com/Frooodle) in [#5580](https://github.com/Stirling-Tools/Stirling-PDF/pull/5580)
- tool tags by [@Frooodle](https://github.com/Frooodle) in [#5568](https://github.com/Stirling-Tools/Stirling-PDF/pull/5568)
- deps(embedPDF): Bump codebase to embedPDF v2.3.0 and adjust codebase for new features by [@balazs-szucs](https://github.com/balazs-szucs) in [#5567](https://github.com/Stirling-Tools/Stirling-PDF/pull/5567)
- possible login fixes by [@Frooodle](https://github.com/Frooodle) in [#5444](https://github.com/Stirling-Tools/Stirling-PDF/pull/5444)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5581](https://github.com/Stirling-Tools/Stirling-PDF/pull/5581)

##### Docker Updates

- chore(ci): remove automated version sync job from build workflow by [@Ludy87](https://github.com/Ludy87) in [#5547](https://github.com/Stirling-Tools/Stirling-PDF/pull/5547)

##### Other Changes

- build(deps): bump pypdf from 6.6.0 to 6.6.2 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5577](https://github.com/Stirling-Tools/Stirling-PDF/pull/5577)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.0...v2.4.1>

---
##### [\`2.4.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.0)

Lots of new features in this release

- database backup management (Only for internal H2 database users)
- Full 2FA support with One-time-password auth code app support!
- Get info supporting better compliance verification
- PDF/X conversions
- automation tool now export into folder scan JSONs for folder automation

Bug fixes for

- Sign tool
- SSO user creation
- addStamp not handling timestamps

Thanks as always for all the fixes and work everyone has been doing! such as [@balazs-szucs](https://github.com/balazs-szucs) or the new bug fix from [@Joey4](https://github.com/Joey4) !
Special thanks to [@Ludy87](https://github.com/Ludy87) for introducing the awesome 2FA feature!

#### What's Changed

##### Enhancements

- feat(admin): add H2 database backup & restore management to admin UI by [@Ludy87](https://github.com/Ludy87) in [#5528](https://github.com/Stirling-Tools/Stirling-PDF/pull/5528)
- feat(frontend): enhance icon detection and update config navigation icon by [@Ludy87](https://github.com/Ludy87) in [#5524](https://github.com/Stirling-Tools/Stirling-PDF/pull/5524)
- feat(security): add TOTP-based multi-factor authentication with backend and UI support by [@Ludy87](https://github.com/Ludy87) in [#5417](https://github.com/Stirling-Tools/Stirling-PDF/pull/5417)
- feat(compliance): implement compliance verfication for get info on PDF by [@balazs-szucs](https://github.com/balazs-szucs) in [#5435](https://github.com/Stirling-Tools/Stirling-PDF/pull/5435)

##### Minor Enhancements

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5530](https://github.com/Stirling-Tools/Stirling-PDF/pull/5530)
- fix(annotations): fix error 300 on sign frontend by [@balazs-szucs](https://github.com/balazs-szucs) in [#5536](https://github.com/Stirling-Tools/Stirling-PDF/pull/5536)
- Fix: Whitelist health endpoints in Security and Enterprise Filter + fix keep original commit by [@Frooodle](https://github.com/Frooodle) in [#5494](https://github.com/Stirling-Tools/Stirling-PDF/pull/5494)
- API cleanups by [@Frooodle](https://github.com/Frooodle) in [#5537](https://github.com/Stirling-Tools/Stirling-PDF/pull/5537)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5490](https://github.com/Stirling-Tools/Stirling-PDF/pull/5490)
- refactor(security): clean up SSO handling, harden URL parsing, and bump dependencies by [@Ludy87](https://github.com/Ludy87) in [#5523](https://github.com/Stirling-Tools/Stirling-PDF/pull/5523)
- fix(common): 🛡️CWE-681 & CWE-197 eliminate tainted numeric casts in size parsing by using BigDecimal with range guards by [@Ludy87](https://github.com/Ludy87) in [#5521](https://github.com/Stirling-Tools/Stirling-PDF/pull/5521)
- build(deps): bump nginx from `c083c37` to `b0f7830` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5500](https://github.com/Stirling-Tools/Stirling-PDF/pull/5500)
- build(deps): bump node from `f4769ca` to `e80397b` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5498](https://github.com/Stirling-Tools/Stirling-PDF/pull/5498)
- Fix V2 SSO user creation by [@Frooodle](https://github.com/Frooodle) in [#5079](https://github.com/Stirling-Tools/Stirling-PDF/pull/5079)
- removal of old java desktop + workspace change in tauri by [@Frooodle](https://github.com/Frooodle) in [#5459](https://github.com/Stirling-Tools/Stirling-PDF/pull/5459)
- Date and time placeholders in addTextStamp are not working by [@Joey4](https://github.com/Joey4) in [#5446](https://github.com/Stirling-Tools/Stirling-PDF/pull/5446)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5539](https://github.com/Stirling-Tools/Stirling-PDF/pull/5539)
- \[V2] feat(convert): add PDF/X export option by [@balazs-szucs](https://github.com/balazs-szucs) in [#5285](https://github.com/Stirling-Tools/Stirling-PDF/pull/5285)
- V2 Show enterprise demo messages for audit and usage by [@Frooodle](https://github.com/Frooodle) in [#5226](https://github.com/Stirling-Tools/Stirling-PDF/pull/5226)
- Export folder scanning by [@Frooodle](https://github.com/Frooodle) in [#5544](https://github.com/Stirling-Tools/Stirling-PDF/pull/5544)
- translations by [@Frooodle](https://github.com/Frooodle) in [#5541](https://github.com/Stirling-Tools/Stirling-PDF/pull/5541)

##### Docker Updates

- Add sync-versions job to GitHub Actions workflow by [@Ludy87](https://github.com/Ludy87) in [#5228](https://github.com/Stirling-Tools/Stirling-PDF/pull/5228)
- build(deps): bump debian from `f668110` to `ed542b2` in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5495](https://github.com/Stirling-Tools/Stirling-PDF/pull/5495)

##### Other Changes

- build(deps): bump logback from 1.5.23 to 1.5.24 by [@dependabot](https://github.com/dependabot)\[bot] in [#5468](https://github.com/Stirling-Tools/Stirling-PDF/pull/5468)
- build(deps): bump io.micrometer:micrometer-core from 1.16.1 to 1.16.2 by [@dependabot](https://github.com/dependabot)\[bot] in [#5466](https://github.com/Stirling-Tools/Stirling-PDF/pull/5466)

#### New Contributors

- [@Joey4](https://github.com/Joey4) made their first contribution in [#5446](https://github.com/Stirling-Tools/Stirling-PDF/pull/5446)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.3.1...v2.4.0>

---
##### [\`2.3.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.3.1)

Several bug fixes , including

- Scroll bar not showing correctly in settings menu
- Automate menus showing options correctly

and several other change,s such as SVG to PDF conversion and performance changes throughout app

#### What's Changed

##### Enhancements

- feat(conversion): add SVG to PDF conversion functionality by [@balazs-szucs](https://github.com/balazs-szucs) in [#5431](https://github.com/Stirling-Tools/Stirling-PDF/pull/5431)
- feat(pipeline): improve file processing with resource management and temp file handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5488](https://github.com/Stirling-Tools/Stirling-PDF/pull/5488)
- feat(admin): add tessdata language management for OCR and download support by [@Ludy87](https://github.com/Ludy87) in [#5519](https://github.com/Stirling-Tools/Stirling-PDF/pull/5519)

##### Minor Enhancements

- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5489](https://github.com/Stirling-Tools/Stirling-PDF/pull/5489)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5484](https://github.com/Stirling-Tools/Stirling-PDF/pull/5484)
- \[V2] fix(automation): enhance parameter handling and default values across operations, fix error in ManyToOne tools by [@balazs-szucs](https://github.com/balazs-szucs) in [#5123](https://github.com/Stirling-Tools/Stirling-PDF/pull/5123)
- scrollbar fixes by [@Frooodle](https://github.com/Frooodle) in [#5529](https://github.com/Stirling-Tools/Stirling-PDF/pull/5529)
- Fix hook ordering for endpoint name resolution by [@Frooodle](https://github.com/Frooodle) in [#5517](https://github.com/Stirling-Tools/Stirling-PDF/pull/5517)
- fix(automation): add zIndex and withinPortal props to dropdown components for improved UI consistency by [@balazs-szucs](https://github.com/balazs-szucs) in [#5527](https://github.com/Stirling-Tools/Stirling-PDF/pull/5527)
- refactor: remove legacy Thymeleaf web UI controllers and templates by [@Ludy87](https://github.com/Ludy87) in [#5406](https://github.com/Stirling-Tools/Stirling-PDF/pull/5406)
- fix(pipeline): avoid bad multipart by letting RestTemplate set boundary by [@Ludy87](https://github.com/Ludy87) in [#5522](https://github.com/Stirling-Tools/Stirling-PDF/pull/5522)
- chore(i18n): update and expand Dutch (nl-NL) translations by [@Stephan-P](https://github.com/Stephan-P) in [#5355](https://github.com/Stirling-Tools/Stirling-PDF/pull/5355)
- Update Italian translations by [@albanobattistella](https://github.com/albanobattistella) in [#5508](https://github.com/Stirling-Tools/Stirling-PDF/pull/5508)

##### Docker Updates

- chore(ci): enable Gradle dependency caching across GitHub workflows by [@Ludy87](https://github.com/Ludy87) in [#5400](https://github.com/Stirling-Tools/Stirling-PDF/pull/5400)
- build(deps): bump actions/checkout from 4.2.2 to 6.0.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5465](https://github.com/Stirling-Tools/Stirling-PDF/pull/5465)

##### Development Tools

- build(deps-dev): bump stylelint-config-standard from 39.0.1 to 40.0.0 in /devTools by [@dependabot](https://github.com/dependabot)\[bot] in [#5504](https://github.com/Stirling-Tools/Stirling-PDF/pull/5504)

##### Other Changes

- build(deps): bump actions/download-artifact from 6.0.0 to 7.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5503](https://github.com/Stirling-Tools/Stirling-PDF/pull/5503)
- build(deps): bump reportlab from 4.4.5 to 4.4.9 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5505](https://github.com/Stirling-Tools/Stirling-PDF/pull/5505)

---
##### [\`2.3.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.3.0)

Several important bug fixes in this release related to

- File conversion threading
- Non-roman alphabet files processing incorrectly
- Desktop app bugs (Lots more fixes coming!)
- And many others!

We also have some really cool features introduced such as

- Telegram bot (In Connections menu or settings.yml)
- PDF to EPUB and AZW3
- MSG support

#### What's Changed

##### Enhancements

- feat(build): enhance JaCoCo reporting with coverage summary and enforce thresholds by [@Ludy87](https://github.com/Ludy87) in [#5352](https://github.com/Stirling-Tools/Stirling-PDF/pull/5352)
- feat(ui): prevent self-modification in People management and highlight current user by [@Ludy87](https://github.com/Ludy87) in [#5441](https://github.com/Stirling-Tools/Stirling-PDF/pull/5441)
- feat(conversion): refactor EML parser to use Simple Java Mail library and add MSG support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5427](https://github.com/Stirling-Tools/Stirling-PDF/pull/5427)
- feat(conversion): add PDF to EPUB/AZW3 conversion support and settings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5434](https://github.com/Stirling-Tools/Stirling-PDF/pull/5434)

##### Minor Enhancements

- build(ci): pin base container images, switch npm install to npm ci, and harden EML error handling by [@Ludy87](https://github.com/Ludy87) in [#5353](https://github.com/Stirling-Tools/Stirling-PDF/pull/5353)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5426](https://github.com/Stirling-Tools/Stirling-PDF/pull/5426)
- Updated ga-IE translations and added keys to ignore list by [@aindriu80](https://github.com/aindriu80) in [#5178](https://github.com/Stirling-Tools/Stirling-PDF/pull/5178)
- fix(api): return JSON responses for admin settings + API key endpoints to prevent Tauri client parse errors by [@Ludy87](https://github.com/Ludy87) in [#5437](https://github.com/Stirling-Tools/Stirling-PDF/pull/5437)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5363](https://github.com/Stirling-Tools/Stirling-PDF/pull/5363)
- build(deps): bump node from 20-alpine to 25-alpine in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5311](https://github.com/Stirling-Tools/Stirling-PDF/pull/5311)
- build(deps): bump nginx from `8491795` to `c083c37` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5448](https://github.com/Stirling-Tools/Stirling-PDF/pull/5448)
- build(deps): bump globals from 16.5.0 to 17.0.0 in /frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5413](https://github.com/Stirling-Tools/Stirling-PDF/pull/5413)
- Add Telegram bot integration for pipeline processing by [@Ludy87](https://github.com/Ludy87) in [#5185](https://github.com/Stirling-Tools/Stirling-PDF/pull/5185)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5458](https://github.com/Stirling-Tools/Stirling-PDF/pull/5458)
- translations by [@Frooodle](https://github.com/Frooodle) in [#5469](https://github.com/Stirling-Tools/Stirling-PDF/pull/5469)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5473](https://github.com/Stirling-Tools/Stirling-PDF/pull/5473)
- fix(auth): remove unnecessary authentication requirement from SignatureController by [@balazs-szucs](https://github.com/balazs-szucs) in [#5477](https://github.com/Stirling-Tools/Stirling-PDF/pull/5477)
- Make controls sticky by [@reecebrowne](https://github.com/reecebrowne) in [#5478](https://github.com/Stirling-Tools/Stirling-PDF/pull/5478)
- fix: update broken enterprise docs link from /Pro to /Paid-Offerings by [@krizhnaa](https://github.com/krizhnaa) in [#5471](https://github.com/Stirling-Tools/Stirling-PDF/pull/5471)
- Libre threads by [@Frooodle](https://github.com/Frooodle) in [#5303](https://github.com/Stirling-Tools/Stirling-PDF/pull/5303)

##### Docker Updates

- build(deps): bump docker/setup-qemu-action from 3.6.0 to 3.7.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5326](https://github.com/Stirling-Tools/Stirling-PDF/pull/5326)
- build(deps): bump step-security/harden-runner from 2.12.1 to 2.14.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5324](https://github.com/Stirling-Tools/Stirling-PDF/pull/5324)
- ci(build): scope Docker layer cache per artifact to avoid cross-contamination by [@Ludy87](https://github.com/Ludy87) in [#5453](https://github.com/Stirling-Tools/Stirling-PDF/pull/5453)
- build(deps): bump alpine from 3.22.2 to 3.23.2 in /docker/backend by [@dependabot](https://github.com/dependabot)\[bot] in [#5316](https://github.com/Stirling-Tools/Stirling-PDF/pull/5316)
- build(deps): bump alpine from 3.22.1 to 3.23.2 in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5319](https://github.com/Stirling-Tools/Stirling-PDF/pull/5319)
- build(deps): bump debian from `1c25564` to `449673e` in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5357](https://github.com/Stirling-Tools/Stirling-PDF/pull/5357)
- build(deps): bump docker/setup-buildx-action from 3.11.1 to 3.12.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5463](https://github.com/Stirling-Tools/Stirling-PDF/pull/5463)
- Docker use latest libreoffice and fonts by [@Frooodle](https://github.com/Frooodle) in [#5482](https://github.com/Stirling-Tools/Stirling-PDF/pull/5482)

##### Translation Changes

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5462](https://github.com/Stirling-Tools/Stirling-PDF/pull/5462)

##### Other Changes

- fix(ci): read workflow\_dispatch PR number from inputs.pr in PR auto-deploy workflow by [@Ludy87](https://github.com/Ludy87) in [#5380](https://github.com/Stirling-Tools/Stirling-PDF/pull/5380)
- build(deps): bump github/codeql-action from 4.31.5 to 4.31.10 by [@dependabot](https://github.com/dependabot)\[bot] in [#5449](https://github.com/Stirling-Tools/Stirling-PDF/pull/5449)
- build(deps): bump pypdf from 6.4.0 to 6.6.0 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5422](https://github.com/Stirling-Tools/Stirling-PDF/pull/5422)
- build(deps): bump io.micrometer:micrometer-core from 1.16.0 to 1.16.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5358](https://github.com/Stirling-Tools/Stirling-PDF/pull/5358)
- Update user login conditions in workflow by [@Frooodle](https://github.com/Frooodle) in [#5457](https://github.com/Stirling-Tools/Stirling-PDF/pull/5457)
- fix(core): reinstall frontend dependencies when iconify package is missing by [@Ludy87](https://github.com/Ludy87) in [#5432](https://github.com/Stirling-Tools/Stirling-PDF/pull/5432)
- fix(translations): improve translation merger CLI and sync missing UI strings across locales by [@Ludy87](https://github.com/Ludy87) in [#5309](https://github.com/Stirling-Tools/Stirling-PDF/pull/5309)
- build(deps): bump urllib3 from 2.5.0 to 2.6.3 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5456](https://github.com/Stirling-Tools/Stirling-PDF/pull/5456)
- build(deps): bump docker/login-action from 3.4.0 to 3.6.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5464](https://github.com/Stirling-Tools/Stirling-PDF/pull/5464)

#### New Contributors

- [@krizhnaa](https://github.com/krizhnaa) made their first contribution in [#5471](https://github.com/Stirling-Tools/Stirling-PDF/pull/5471)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.2.1...v2.3.0>

<!-- Release notes generated using configuration in .github/release.yml at v2.3.0 -->

#### What's Changed

##### Enhancements

- feat(build): enhance JaCoCo reporting with coverage summary and enforce thresholds by [@Ludy87](https://github.com/Ludy87) in [#5352](https://github.com/Stirling-Tools/Stirling-PDF/pull/5352)
- feat(ui): prevent self-modification in People management and highlight current user by [@Ludy87](https://github.com/Ludy87) in [#5441](https://github.com/Stirling-Tools/Stirling-PDF/pull/5441)
- feat(conversion): refactor EML parser to use Simple Java Mail library and add MSG support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5427](https://github.com/Stirling-Tools/Stirling-PDF/pull/5427)
- feat(conversion): add PDF to EPUB/AZW3 conversion support and settings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5434](https://github.com/Stirling-Tools/Stirling-PDF/pull/5434)

##### Minor Enhancements

- build(ci): pin base container images, switch npm install to npm ci, and harden EML error handling by [@Ludy87](https://github.com/Ludy87) in [#5353](https://github.com/Stirling-Tools/Stirling-PDF/pull/5353)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5426](https://github.com/Stirling-Tools/Stirling-PDF/pull/5426)
- Updated ga-IE translations and added keys to ignore list by [@aindriu80](https://github.com/aindriu80) in [#5178](https://github.com/Stirling-Tools/Stirling-PDF/pull/5178)
- fix(api): return JSON responses for admin settings + API key endpoints to prevent Tauri client parse errors by [@Ludy87](https://github.com/Ludy87) in [#5437](https://github.com/Stirling-Tools/Stirling-PDF/pull/5437)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5363](https://github.com/Stirling-Tools/Stirling-PDF/pull/5363)
- build(deps): bump node from 20-alpine to 25-alpine in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5311](https://github.com/Stirling-Tools/Stirling-PDF/pull/5311)
- build(deps): bump nginx from `8491795` to `c083c37` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5448](https://github.com/Stirling-Tools/Stirling-PDF/pull/5448)
- build(deps): bump globals from 16.5.0 to 17.0.0 in /frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5413](https://github.com/Stirling-Tools/Stirling-PDF/pull/5413)
- Add Telegram bot integration for pipeline processing by [@Ludy87](https://github.com/Ludy87) in [#5185](https://github.com/Stirling-Tools/Stirling-PDF/pull/5185)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5458](https://github.com/Stirling-Tools/Stirling-PDF/pull/5458)
- translations by [@Frooodle](https://github.com/Frooodle) in [#5469](https://github.com/Stirling-Tools/Stirling-PDF/pull/5469)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5473](https://github.com/Stirling-Tools/Stirling-PDF/pull/5473)
- fix(auth): remove unnecessary authentication requirement from SignatureController by [@balazs-szucs](https://github.com/balazs-szucs) in [#5477](https://github.com/Stirling-Tools/Stirling-PDF/pull/5477)
- Make controls sticky by [@reecebrowne](https://github.com/reecebrowne) in [#5478](https://github.com/Stirling-Tools/Stirling-PDF/pull/5478)
- fix: update broken enterprise docs link from /Pro to /Paid-Offerings by [@krizhnaa](https://github.com/krizhnaa) in [#5471](https://github.com/Stirling-Tools/Stirling-PDF/pull/5471)
- Libre threads by [@Frooodle](https://github.com/Frooodle) in [#5303](https://github.com/Stirling-Tools/Stirling-PDF/pull/5303)

##### Docker Updates

- build(deps): bump docker/setup-qemu-action from 3.6.0 to 3.7.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5326](https://github.com/Stirling-To…
renovate bot added a commit to sdwilsh/ansible-playbooks that referenced this pull request Mar 13, 2026
… docker tag to v2

##### [\`2.7.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.1)

Bug fixes for various issues such as:

- Desktop conversions mistakenly doing a 'save' to 'save as'
- Desktop 'open with PDF' having invalid description on windows
- Posthog still creating a cookie even when its not used (still a  fully unused cookie tho)
- Desktop not falling back to local connection if on selfhosted and server down
- Rotate on large docs not always working correctly

#### What's Changed

##### Minor Enhancements

- Chore/v2/transforms as root by [@reecebrowne](https://github.com/reecebrowne) in [#5868](https://github.com/Stirling-Tools/Stirling-PDF/pull/5868)
- Limit PostHog cookie to Stirling PDF's subdomain only by [@bban160](https://github.com/bban160) in [#5882](https://github.com/Stirling-Tools/Stirling-PDF/pull/5882)
- Posthog-fixes by [@ConnorYoh](https://github.com/ConnorYoh) in [#5901](https://github.com/Stirling-Tools/Stirling-PDF/pull/5901)
- Get rid of bad description for file association on Windows by [@jbrunton96](https://github.com/jbrunton96) in [#5905](https://github.com/Stirling-Tools/Stirling-PDF/pull/5905)
- Desktop: Fallback to local backend if self-hosted server is offline by [@ConnorYoh](https://github.com/ConnorYoh) in [#5880](https://github.com/Stirling-Tools/Stirling-PDF/pull/5880)
- Add SaaS frontend code by [@jbrunton96](https://github.com/jbrunton96) in [#5879](https://github.com/Stirling-Tools/Stirling-PDF/pull/5879)
- Manage state of price-lookup calls by [@ConnorYoh](https://github.com/ConnorYoh) in [#5915](https://github.com/Stirling-Tools/Stirling-PDF/pull/5915)
- Add system for managing env vars by [@jbrunton96](https://github.com/jbrunton96) in [#5902](https://github.com/Stirling-Tools/Stirling-PDF/pull/5902)
- Fix rotate failing on large documents by [@reecebrowne](https://github.com/reecebrowne) in [#5917](https://github.com/Stirling-Tools/Stirling-PDF/pull/5917)
- Cleanup-conversion-translations by [@ConnorYoh](https://github.com/ConnorYoh) in [#5906](https://github.com/Stirling-Tools/Stirling-PDF/pull/5906)
- Update Italian translations by [@albanobattistella](https://github.com/albanobattistella) in [#5884](https://github.com/Stirling-Tools/Stirling-PDF/pull/5884)

##### Development Tools

- Move AI advice to AGENTS.md and add symlink from CLAUDE.md by [@jbrunton96](https://github.com/jbrunton96) in [#5914](https://github.com/Stirling-Tools/Stirling-PDF/pull/5914)

#### New Contributors

- [@bban160](https://github.com/bban160) made their first contribution in [#5882](https://github.com/Stirling-Tools/Stirling-PDF/pull/5882)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.7.0...v2.7.1>

---
##### [\`2.7.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.0)

Lots of changes in this release yet again!

App:

- option to hide google drive and mobile upload when disabled in 'my files' view
- New search bar to search settings menu easily
- Auditing has improved, new filehash/author options are supported with better reporting overall (We recommend enterprise users to backup their Stirling database before updating to be safe, although expect no issues)

Desktop:

- Desktop app correctly returns to its previous window state and location as its previous launch
- Desktop app supports OS notifications if it finishes working on tasks whilst minimised

Bugs fixed:

- Pipeline erroring in merge tool and others based on parameters
- Certification signature stamps not showing correctly in the viewer
- English was being enabled even when it was disabled in settings

#### What's Changed

##### Enhancements

- settings menu reworks by [@Frooodle](https://github.com/Frooodle) in [#5864](https://github.com/Stirling-Tools/Stirling-PDF/pull/5864)

##### Minor Enhancements

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5775](https://github.com/Stirling-Tools/Stirling-PDF/pull/5775)
- Persist Tauri window state between launches by [@Frooodle](https://github.com/Frooodle) in [#5871](https://github.com/Stirling-Tools/Stirling-PDF/pull/5871)
- tauri notifications by [@Frooodle](https://github.com/Frooodle) in [#5875](https://github.com/Stirling-Tools/Stirling-PDF/pull/5875)
- Audit fixes and improvements by [@Frooodle](https://github.com/Frooodle) in [#5835](https://github.com/Stirling-Tools/Stirling-PDF/pull/5835)
- fix: merge pdf pipeline validation by [@RenzoMXD](https://github.com/RenzoMXD) in [#5799](https://github.com/Stirling-Tools/Stirling-PDF/pull/5799)
- Fix signatures not showing by [@ConnorYoh](https://github.com/ConnorYoh) in [#5872](https://github.com/Stirling-Tools/Stirling-PDF/pull/5872)
- Add the production billing portal link for static plan page by [@ConnorYoh](https://github.com/ConnorYoh) in [#5860](https://github.com/Stirling-Tools/Stirling-PDF/pull/5860)
- option to hide google drive and add settings by [@Frooodle](https://github.com/Frooodle) in [#5863](https://github.com/Stirling-Tools/Stirling-PDF/pull/5863)
- stop enabling english by [@Frooodle](https://github.com/Frooodle) in [#5874](https://github.com/Stirling-Tools/Stirling-PDF/pull/5874)
- Add searchable settings selector to AppConfigModal and improve nav behavior by [@Frooodle](https://github.com/Frooodle) in [#5873](https://github.com/Stirling-Tools/Stirling-PDF/pull/5873)

##### Docker Updates

- build(deps): bump actions/setup-node from 4.4.0 to 6.2.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5691](https://github.com/Stirling-Tools/Stirling-PDF/pull/5691)

##### Other Changes

- Don't build mac if you don't have the secrets by [@ConnorYoh](https://github.com/ConnorYoh) in [#5861](https://github.com/Stirling-Tools/Stirling-PDF/pull/5861)
- build(deps): bump digicert/ssm-code-signing from 1.2.0 to 1.2.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5692](https://github.com/Stirling-Tools/Stirling-PDF/pull/5692)
- build(deps): bump pypdf from 6.7.4 to 6.7.5 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5853](https://github.com/Stirling-Tools/Stirling-PDF/pull/5853)
- translations and version bump by [@Frooodle](https://github.com/Frooodle) in [#5878](https://github.com/Stirling-Tools/Stirling-PDF/pull/5878)

#### New Contributors

- [@RenzoMXD](https://github.com/RenzoMXD) made their first contribution in [#5799](https://github.com/Stirling-Tools/Stirling-PDF/pull/5799)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.6.0...v2.7.0>

---
##### [\`2.6.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.6.0)

In this update, we have drastically improved Stirling PDFs memory usage and startup performance in our testing you should see around a 30% reduction in both idle usage and startup speed
We have also dramatically reduced the filesize of the docker by 30-40%

Breaking updates:
No longer supporting JDK 17, we have moved to JDK 21-25 and are recommending all jar installs to upgrade to JDK 25 for best performance

Other updates

- Desktop now supports running non installed tools by optionally connecting to Stirling cloud server IF a user chooses to and is already running via login to cloud
- Several dependencies have been updated
- Security patches

Bug fixes

- Health check failing under certain auth scenarios
- Crop not working for desktop

##### What's Changed

##### Enhancements

- feat(docker): update base images to Java 25, Spring 4, Jackson 3, Gradle 9 and optimize JVM options (Project Lilliput) by [@balazs-szucs](https://github.com/balazs-szucs) in [#5725](https://github.com/Stirling-Tools/Stirling-PDF/pull/5725)
- feat(annotation): add moveAnnotation API for efficient repositioning of annotations, and bump embed to 2.7.0 by [@balazs-szucs](https://github.com/balazs-szucs) in [#5809](https://github.com/Stirling-Tools/Stirling-PDF/pull/5809)
- feat(conversion): switch PDF input engine to pdftohtml for improved performance and reduced dependencies by [@balazs-szucs](https://github.com/balazs-szucs) in [#5820](https://github.com/Stirling-Tools/Stirling-PDF/pull/5820)
- feat(aot): add aot-diagnostics.sh for AOT cache diagnostics and validation by [@balazs-szucs](https://github.com/balazs-szucs) in [#5848](https://github.com/Stirling-Tools/Stirling-PDF/pull/5848)

##### Minor Enhancements

- Update frontend minor package versions by [@jbrunton96](https://github.com/jbrunton96) in [#5787](https://github.com/Stirling-Tools/Stirling-PDF/pull/5787)
- Sync up Tauri versions by [@jbrunton96](https://github.com/jbrunton96) in [#5789](https://github.com/Stirling-Tools/Stirling-PDF/pull/5789)
- zip and response issues by [@Frooodle](https://github.com/Frooodle) in [#5786](https://github.com/Stirling-Tools/Stirling-PDF/pull/5786)
- Change to use dpdm for circular import scanning by [@jbrunton96](https://github.com/jbrunton96) in [#5788](https://github.com/Stirling-Tools/Stirling-PDF/pull/5788)
- Cachefixing test by [@Frooodle](https://github.com/Frooodle) in [#5793](https://github.com/Stirling-Tools/Stirling-PDF/pull/5793)
- Desktop connection SaaS: config, billing, team support by [@ConnorYoh](https://github.com/ConnorYoh) in [#5768](https://github.com/Stirling-Tools/Stirling-PDF/pull/5768)
- Switch to use ESLint 10 by [@jbrunton96](https://github.com/jbrunton96) in [#5794](https://github.com/Stirling-Tools/Stirling-PDF/pull/5794)
- cleanups by [@Frooodle](https://github.com/Frooodle) in [#5795](https://github.com/Stirling-Tools/Stirling-PDF/pull/5795)
- DocumentBuilderFactory limiting by [@Frooodle](https://github.com/Frooodle) in [#5797](https://github.com/Stirling-Tools/Stirling-PDF/pull/5797)
- lint by [@reecebrowne](https://github.com/reecebrowne) in [#5802](https://github.com/Stirling-Tools/Stirling-PDF/pull/5802)
- Harden shared signature endpoints  by [@Frooodle](https://github.com/Frooodle) in [#5806](https://github.com/Stirling-Tools/Stirling-PDF/pull/5806)
- open-saml bumps by [@Frooodle](https://github.com/Frooodle) in [#5805](https://github.com/Stirling-Tools/Stirling-PDF/pull/5805)
- fix split cuased by defaultParameters breaking dynamic endpoint tools by [@Frooodle](https://github.com/Frooodle) in [#5838](https://github.com/Stirling-Tools/Stirling-PDF/pull/5838)
- hardening by [@Frooodle](https://github.com/Frooodle) in [#5807](https://github.com/Stirling-Tools/Stirling-PDF/pull/5807)
- Fix health status checks falling under mettric flag by [@Frooodle](https://github.com/Frooodle) in [#5821](https://github.com/Stirling-Tools/Stirling-PDF/pull/5821)
- Frontend and Desktop audit fixes by [@ConnorYoh](https://github.com/ConnorYoh) in [#5840](https://github.com/Stirling-Tools/Stirling-PDF/pull/5840)
- refactor(merge,split,json): adopt streaming approach and standardize types, address gradle warnings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5803](https://github.com/Stirling-Tools/Stirling-PDF/pull/5803)
- fallback for /api/v1/config/endpoints-availability by [@ConnorYoh](https://github.com/ConnorYoh) in [#5842](https://github.com/Stirling-Tools/Stirling-PDF/pull/5842)
- Add check for ghostscript before plowing on with removeDataOutsideCrop by [@ConnorYoh](https://github.com/ConnorYoh) in [#5845](https://github.com/Stirling-Tools/Stirling-PDF/pull/5845)
- Fix split tooltips by [@reecebrowne](https://github.com/reecebrowne) in [#5847](https://github.com/Stirling-Tools/Stirling-PDF/pull/5847)

##### Docker Updates

- disable other dockers by [@Frooodle](https://github.com/Frooodle) in [#5792](https://github.com/Stirling-Tools/Stirling-PDF/pull/5792)
- docker cache fix by [@Frooodle](https://github.com/Frooodle) in [#5801](https://github.com/Stirling-Tools/Stirling-PDF/pull/5801)
- \[Aikido] AI Fix for 3rd party Github Actions should be pinned by [@aikido-autofix](https://github.com/aikido-autofix)\[bot] in [#5817](https://github.com/Stirling-Tools/Stirling-PDF/pull/5817)
- fix(aot): use Spring Boot exploded layer format for aot cache by [@balazs-szucs](https://github.com/balazs-szucs) in [#5811](https://github.com/Stirling-Tools/Stirling-PDF/pull/5811)
- \[StepSecurity] Apply security best practices by [@step-security-bot](https://github.com/step-security-bot) in [#5830](https://github.com/Stirling-Tools/Stirling-PDF/pull/5830)
- tauri jdk25 and docs by [@Frooodle](https://github.com/Frooodle) in [#5814](https://github.com/Stirling-Tools/Stirling-PDF/pull/5814)

##### Development Tools

- build(deps): bump ajv from 8.17.1 to 8.18.0 in /devTools in the npm\_and\_yarn group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5774](https://github.com/Stirling-Tools/Stirling-PDF/pull/5774)
- build(deps-dev): bump stylelint from 16.26.1 to 17.4.0 in /devTools by [@dependabot](https://github.com/dependabot)\[bot] in [#5822](https://github.com/Stirling-Tools/Stirling-PDF/pull/5822)

##### Other Changes

- build(deps-dev): bump pillow from 12.1.0 to 12.1.1 in /.github/scripts in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5720](https://github.com/Stirling-Tools/Stirling-PDF/pull/5720)
- build(deps): bump pillow from 12.1.0 to 12.1.1 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5719](https://github.com/Stirling-Tools/Stirling-PDF/pull/5719)
- deps by [@Frooodle](https://github.com/Frooodle) in [#5796](https://github.com/Stirling-Tools/Stirling-PDF/pull/5796)
- chore(deps): update dependencies for security by [@balazs-szucs](https://github.com/balazs-szucs) in [#5813](https://github.com/Stirling-Tools/Stirling-PDF/pull/5813)
- ci: provide default desktop env vars in tauri GitHub Actions builds by [@Frooodle](https://github.com/Frooodle) in [#5815](https://github.com/Stirling-Tools/Stirling-PDF/pull/5815)
- skip certs by [@Frooodle](https://github.com/Frooodle) in [#5819](https://github.com/Stirling-Tools/Stirling-PDF/pull/5819)
- build(deps): bump pypdf from 6.6.2 to 6.7.4 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5825](https://github.com/Stirling-Tools/Stirling-PDF/pull/5825)
- build(deps): bump github/codeql-action from 4.31.10 to 4.32.4 by [@dependabot](https://github.com/dependabot)\[bot] in [#5833](https://github.com/Stirling-Tools/Stirling-PDF/pull/5833)
- build(deps): bump actions/ai-inference from 2.0.5 to 2.0.7 by [@dependabot](https://github.com/dependabot)\[bot] in [#5831](https://github.com/Stirling-Tools/Stirling-PDF/pull/5831)
- build(deps): bump com.sun.xml.bind:jaxb-core from 2.3.0.1 to 4.0.6 by [@dependabot](https://github.com/dependabot)\[bot] in [#5365](https://github.com/Stirling-Tools/Stirling-PDF/pull/5365)

##### New Contributors

- [@aikido-autofix](https://github.com/aikido-autofix)\[bot] made their first contribution in [#5817](https://github.com/Stirling-Tools/Stirling-PDF/pull/5817)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.3...v2.6.0>

---
##### [\`2.5.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.3)

This release contains:

- New feature for XLSX conversion
- New feature for splitting a page into printable chunks (a3 into 2 a4 etc for posters)
- Keyboard shortcut support for the viewer
- Bug fixes for some viewer issues
- Bug fix for cookie consent showing on desktop builds

##### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@intelliking](https://github.com/intelliking) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

##### New Contributors

- [@intelliking](https://github.com/intelliking) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

<!-- Release notes generated using configuration in .github/release.yml at v2.5.3 -->

##### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@statxc](https://github.com/statxc) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

##### New Contributors

- [@statxc](https://github.com/statxc) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

<!-- Release notes generated using configuration in .github/release.yml at v2.5.3 -->

##### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@statxc](https://github.com/statxc) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

##### New Contributors

- [@statxc](https://github.com/statxc) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

---
##### [\`2.5.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.2)

This is a release for

- Security improvements
- Ruler / Measure support in the viewer
  Bug fixes for:
- writing to forms not working on OSS (package now moved fully to OSS)
- Possible fix for mac desktop issues
- desktop not being detected as desktop all the time
- license checks not having a retry
- desktop having wrong publisher ID

##### What's Changed

##### Enhancements

- Add plist file for Mac permissions by [@jbrunton96](https://github.com/jbrunton96) in [#5756](https://github.com/Stirling-Tools/Stirling-PDF/pull/5756)

##### Minor Enhancements

- ruler support by [@Frooodle](https://github.com/Frooodle) in [#5758](https://github.com/Stirling-Tools/Stirling-PDF/pull/5758)
- fix publishing for tauri author by [@Frooodle](https://github.com/Frooodle) in [#5757](https://github.com/Stirling-Tools/Stirling-PDF/pull/5757)
- dos fixes by [@Frooodle](https://github.com/Frooodle) in [#5759](https://github.com/Stirling-Tools/Stirling-PDF/pull/5759)
- licensere reTry by [@Frooodle](https://github.com/Frooodle) in [#5763](https://github.com/Stirling-Tools/Stirling-PDF/pull/5763)
- authclient by [@Frooodle](https://github.com/Frooodle) in [#5761](https://github.com/Stirling-Tools/Stirling-PDF/pull/5761)
- zipFix by [@Frooodle](https://github.com/Frooodle) in [#5762](https://github.com/Stirling-Tools/Stirling-PDF/pull/5762)
- Update de translation.toml by [@Hugomaulwurf76](https://github.com/Hugomaulwurf76) in [#5736](https://github.com/Stirling-Tools/Stirling-PDF/pull/5736)
- Translate various terms in Italian localization by [@albanobattistella](https://github.com/albanobattistella) in [#5749](https://github.com/Stirling-Tools/Stirling-PDF/pull/5749)
- Move Forms location by [@Frooodle](https://github.com/Frooodle) in [#5769](https://github.com/Stirling-Tools/Stirling-PDF/pull/5769)
- translations ai (please override as you see fit in new PRs these are placeholder) by [@Frooodle](https://github.com/Frooodle) in [#5770](https://github.com/Stirling-Tools/Stirling-PDF/pull/5770)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5675](https://github.com/Stirling-Tools/Stirling-PDF/pull/5675)

##### Other Changes

- build(tauri): enforce Java 17+ requirement in Windows jlink build script by [@Ludy87](https://github.com/Ludy87) in [#5684](https://github.com/Stirling-Tools/Stirling-PDF/pull/5684)

##### New Contributors

- [@Hugomaulwurf76](https://github.com/Hugomaulwurf76) made their first contribution in [#5736](https://github.com/Stirling-Tools/Stirling-PDF/pull/5736)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.1...v2.5.2>

---
##### [\`2.5.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.1)

Several bug fixes in this release

- Login issues showing "something went wrong" when language list = 1
- Forms not showing correctly
- Forms not working on desktop
- Desktop SSO redirect race condition issues
- 431 error for large endpoint for endpoints available

##### What's Changed

##### Minor Enhancements

- Fix SAML login "something went wrong" when language list = 1  by [@Frooodle](https://github.com/Frooodle) in [#5750](https://github.com/Stirling-Tools/Stirling-PDF/pull/5750)
- fix(forms): Update form field UI and behavior for better interactivity and alignment by [@balazs-szucs](https://github.com/balazs-szucs) in [#5747](https://github.com/Stirling-Tools/Stirling-PDF/pull/5747)
- fixes for desktop SSO by [@Frooodle](https://github.com/Frooodle) in [#5751](https://github.com/Stirling-Tools/Stirling-PDF/pull/5751)
- large query reduction by [@Frooodle](https://github.com/Frooodle) in [#5754](https://github.com/Stirling-Tools/Stirling-PDF/pull/5754)
- fix(form-fill): fix hardcoded response by [@balazs-szucs](https://github.com/balazs-szucs) in [#5755](https://github.com/Stirling-Tools/Stirling-PDF/pull/5755)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.0...v2.5.1>

---
##### [\`2.5.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.0)

This is a big update with lots of new functionality and changes like Form fill and redaction/annotation improvements! Also several changes around the login session expiry
Special thanks to [@balazs-szucs](https://github.com/balazs-szucs), who put a lot of work into this release!

New functionality:

- Huge manual redaction changes with colour selection and improved UI
- Add attachment support with sidebar button for viewing attachments etc (Seen in viewer mode)
- FormFill tool with context and UI components for PDF form filling
- Desktop now edits files that have been openned instead of creating new copies
- Extra JWT settings to customise expiry times for desktop and browser
- Add/remove link support

Extra improvements:

- Text selection improvements within the viewer with custom actions
- Improved link handling and link location
- EmbedPDF 2.6.0 upgrade for several bug fixes
- Multiple fixes with the viewer, its functionality, and its export
- PDF Text editor cache / JSON size issues
- Enhanced JWT handling and refreshing for better session management without forced re-logins
- Improved annotation UI
- Files correctly open in the viewer automatically if only 1 file is opened
- Improved tool disable menu to be able to disable all remaining tools and docs

##### What's Changed

##### Enhancements

- feat(redaction): improve manual redaction with color selection and updated UI elements by [@balazs-szucs](https://github.com/balazs-szucs) in [#5679](https://github.com/Stirling-Tools/Stirling-PDF/pull/5679)
- feat(text-selection): implement text selection enhancement for double and triple-click actions by [@balazs-szucs](https://github.com/balazs-szucs) in [#5712](https://github.com/Stirling-Tools/Stirling-PDF/pull/5712)
- feat(linklayer): improve link handling with pdf-lib integration and add link toolbar, add delete link functionality by [@balazs-szucs](https://github.com/balazs-szucs) in [#5715](https://github.com/Stirling-Tools/Stirling-PDF/pull/5715)
- feat(attachments): add attachment support with sidebar and API integration by [@balazs-szucs](https://github.com/balazs-szucs) in [#5673](https://github.com/Stirling-Tools/Stirling-PDF/pull/5673)
- feat(form-fill): FormFill tool with context and UI components for PDF form filling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5711](https://github.com/Stirling-Tools/Stirling-PDF/pull/5711)
- feat(frontend): Upgrade embedPDF to v2.6.0 and migrate to pdf-lib fork, fix attachment/bookmark panel by [@balazs-szucs](https://github.com/balazs-szucs) in [#5723](https://github.com/Stirling-Tools/Stirling-PDF/pull/5723)

##### Minor Enhancements

- Update translation by [@albanobattistella](https://github.com/albanobattistella) in [#5670](https://github.com/Stirling-Tools/Stirling-PDF/pull/5670)
- various  viewer pill fixes by [@reecebrowne](https://github.com/reecebrowne) in [#5714](https://github.com/Stirling-Tools/Stirling-PDF/pull/5714)
- Fix viewer export by [@reecebrowne](https://github.com/reecebrowne) in [#5713](https://github.com/Stirling-Tools/Stirling-PDF/pull/5713)
- fix tool disabling for docs and others by [@Frooodle](https://github.com/Frooodle) in [#5722](https://github.com/Stirling-Tools/Stirling-PDF/pull/5722)
- Preserve local paths for desktop saves by [@Frooodle](https://github.com/Frooodle) in [#5543](https://github.com/Stirling-Tools/Stirling-PDF/pull/5543)
- refactor(api): replace regex string literals with Pattern instances for improved performance and readability by [@balazs-szucs](https://github.com/balazs-szucs) in [#5680](https://github.com/Stirling-Tools/Stirling-PDF/pull/5680)
- refactor: fix homepage file upload path by [@Frooodle](https://github.com/Frooodle) in [#5738](https://github.com/Stirling-Tools/Stirling-PDF/pull/5738)
- PDF Text editor changes by [@Frooodle](https://github.com/Frooodle) in [#5726](https://github.com/Stirling-Tools/Stirling-PDF/pull/5726)
- fix\_env\_files\_for\_tauri by [@ConnorYoh](https://github.com/ConnorYoh) in [#5741](https://github.com/Stirling-Tools/Stirling-PDF/pull/5741)
- JWT enhancements for desktop by [@Frooodle](https://github.com/Frooodle) in [#5742](https://github.com/Stirling-Tools/Stirling-PDF/pull/5742)
- Chore/v2/improve annotation UI by [@reecebrowne](https://github.com/reecebrowne) in [#5724](https://github.com/Stirling-Tools/Stirling-PDF/pull/5724)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.6...v2.5.0>

---
##### [\`2.4.6\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.6)

Several bug fixes for the issues:

- License not always correctly loading due to cache issues
- public endpoints not always accessible when without JWT
- Language not always correctly taking the server's default
- Desktop issues for SAML SSO
- maxFileSize server setting not being handled correctly

As well as

- SSO cleanups
- Extra SSO logging for future issues
- markdown conversion now supports images

##### What's Changed

##### Breaking Changes

- fix(markdown): markdown conversion image handling and zip support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5677](https://github.com/Stirling-Tools/Stirling-PDF/pull/5677)

##### Enhancements

- Enhance SSO SAML in desktop app by [@jbrunton96](https://github.com/jbrunton96) in [#5705](https://github.com/Stirling-Tools/Stirling-PDF/pull/5705)

##### Minor Enhancements

- Fix maxFileSize environment variable support ([#5542](https://github.com/Stirling-Tools/Stirling-PDF/issues/5542)) by [@Eruis2579](https://github.com/Eruis2579) in [#5655](https://github.com/Stirling-Tools/Stirling-PDF/pull/5655)
- Bug fixing and debugs by [@Frooodle](https://github.com/Frooodle) in [#5704](https://github.com/Stirling-Tools/Stirling-PDF/pull/5704)
- fix(api): address potential backend resource leaks and improve frontend accessibility by [@balazs-szucs](https://github.com/balazs-szucs) in [#5678](https://github.com/Stirling-Tools/Stirling-PDF/pull/5678)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5668](https://github.com/Stirling-Tools/Stirling-PDF/pull/5668)
- build(deps): bump com.diffplug.spotless from 8.1.0 to 8.2.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5592](https://github.com/Stirling-Tools/Stirling-PDF/pull/5592)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.5...v2.4.6>

---
##### [\`2.4.5\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.5)

Desktop changes

- Windows desktop MSI to support headless installation with custom parameters to set up server URL and login mode, an example for this would be `msiexec /i "Stirling-PDF-windows-x86_64.msi
  " /qn STIRLING_SERVER_URL="http://192.168.1.53:2357/" STIRLING_LOCK_CONNECTION=1`

`STIRLING_SERVER_URL` auto sets the URL and `STIRLING_LOCK_CONNECTION=1` sets the connection mode to be ONLY self-host server, ensuring no mistaken connections to external servers. Please note this feature is currently in testing, if you have feedback or have tried it please let us know! (Even if it worked perfectly its good to know!)

- SSO UI changes
- support for login method restrictions in desktop
- remembers last entered selfhost URL for easy reconnection

General changes

- SSO functionality cleanups (a few more to come soon!)
- New strict mode for PDF/A conversion for issues were conversation isn't perfect
- redaction improvements

Bug fixes

- SSO auto login mode now working correctly

##### What's Changed

##### Enhancements

- feat:(pdfa-conversion) Implement Strict PDF/A Mode with Verification by [@balazs-szucs](https://github.com/balazs-szucs) in [#5663](https://github.com/Stirling-Tools/Stirling-PDF/pull/5663)
- feat(desktop): show and reuse last used server URL in Setup Wizard by [@Ludy87](https://github.com/Ludy87) in [#5659](https://github.com/Stirling-Tools/Stirling-PDF/pull/5659)
- feat(redaction): update to embedPDF v2.4.0 with unified redaction mode support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5652](https://github.com/Stirling-Tools/Stirling-PDF/pull/5652)

##### Minor Enhancements

- Saml fix by [@Frooodle](https://github.com/Frooodle) in [#5651](https://github.com/Stirling-Tools/Stirling-PDF/pull/5651)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5618](https://github.com/Stirling-Tools/Stirling-PDF/pull/5618)
- fix(frontend): improve synonym search by [@Ludy87](https://github.com/Ludy87) in [#5639](https://github.com/Stirling-Tools/Stirling-PDF/pull/5639)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5666](https://github.com/Stirling-Tools/Stirling-PDF/pull/5666)
- Headless windows installer by [@Frooodle](https://github.com/Frooodle) in [#5664](https://github.com/Stirling-Tools/Stirling-PDF/pull/5664)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5669](https://github.com/Stirling-Tools/Stirling-PDF/pull/5669)
- SSO styling changes  by [@Frooodle](https://github.com/Frooodle) in [#5671](https://github.com/Stirling-Tools/Stirling-PDF/pull/5671)

##### Docker Updates

- build(deps): bump alpine from 3.23.2 to 3.23.3 in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5590](https://github.com/Stirling-Tools/Stirling-PDF/pull/5590)
- chore(ci): update GitHub Actions to latest stable versions by [@Ludy87](https://github.com/Ludy87) in [#5629](https://github.com/Stirling-Tools/Stirling-PDF/pull/5629)

##### Translation Changes

- chore(ci): improve language TOML check output with fixer guidance by [@Ludy87](https://github.com/Ludy87) in [#5638](https://github.com/Stirling-Tools/Stirling-PDF/pull/5638)
- chore(ci): refine pre-commit workflows, add TOML sorting by [@Ludy87](https://github.com/Ludy87) in [#5648](https://github.com/Stirling-Tools/Stirling-PDF/pull/5648)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5667](https://github.com/Stirling-Tools/Stirling-PDF/pull/5667)

##### Development Tools

- chore(vscode): replace deprecated Copilot extension with Copilot Chat by [@Ludy87](https://github.com/Ludy87) in [#5662](https://github.com/Stirling-Tools/Stirling-PDF/pull/5662)

##### Other Changes

- build(deps): bump io.swagger.core.v3:swagger-core-jakarta from 2.2.41 to 2.2.42 by [@dependabot](https://github.com/dependabot)\[bot] in [#5549](https://github.com/Stirling-Tools/Stirling-PDF/pull/5549)
- build(deps): bump org.postgresql:postgresql from 42.7.8 to 42.7.9 by [@dependabot](https://github.com/dependabot)\[bot] in [#5554](https://github.com/Stirling-Tools/Stirling-PDF/pull/5554)
- fix(build): define repositories to resolve test classpath dependencies by [@Ludy87](https://github.com/Ludy87) in [#5650](https://github.com/Stirling-Tools/Stirling-PDF/pull/5650)
- tauri comments by [@Frooodle](https://github.com/Frooodle) in [#5634](https://github.com/Stirling-Tools/Stirling-PDF/pull/5634)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.4...v2.4.5>

---
##### [\`2.4.4\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.4)

Quick fix for page editor bug causes multi-page selection issues

This release also contains

- Italian translations
- Bates stamping functionality to add page numbers
- Extract bookmarks API fix
- Diagnostics command in CLI for easy error reporting (grabs logs into a zip on request for you to view)

##### What's Changed

##### Enhancements

- feat(i18n): add missing compare placeholder and stamp label translations by [@Ludy87](https://github.com/Ludy87) in [#5636](https://github.com/Stirling-Tools/Stirling-PDF/pull/5636)

##### Minor Enhancements

- update to add optional Zero Padding to page numbers (Bates Stamping).… by [@mrober01](https://github.com/mrober01) in [#5612](https://github.com/Stirling-Tools/Stirling-PDF/pull/5612)
- Fix ClassCastException in extractBookmarks endpoint ([#5578](https://github.com/Stirling-Tools/Stirling-PDF/issues/5578)) by [@Eruis2579](https://github.com/Eruis2579) in [#5604](https://github.com/Stirling-Tools/Stirling-PDF/pull/5604)
- Bug/page editor additional fixes by [@reecebrowne](https://github.com/reecebrowne) in [#5660](https://github.com/Stirling-Tools/Stirling-PDF/pull/5660)
- Updated Italian translation by [@albanobattistella](https://github.com/albanobattistella) in [#5637](https://github.com/Stirling-Tools/Stirling-PDF/pull/5637)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5642](https://github.com/Stirling-Tools/Stirling-PDF/pull/5642)

##### Other Changes

- diagnostic script by [@Frooodle](https://github.com/Frooodle) in [#5646](https://github.com/Stirling-Tools/Stirling-PDF/pull/5646)

##### New Contributors

- [@mrober01](https://github.com/mrober01) made their first contribution in [#5612](https://github.com/Stirling-Tools/Stirling-PDF/pull/5612)
- [@Eruis2579](https://github.com/Eruis2579) made their first contribution in [#5604](https://github.com/Stirling-Tools/Stirling-PDF/pull/5604)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.3...v2.4.4>

---
##### [\`2.4.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.3)

Big desktop release today, full of fixes as well as other changes!

- Correctly show desktop and server versioning separately
- Support for watched folders to be recursive and multiple directories to be defined
- Desktop login expiry fix
- Desktop self-host connection improvements (self-sign fixes and others)
- Page editor performance and UI improvements
- frontend error screen appearing during SSO fix
- Desktop CORS fixes

##### What's Changed

##### Enhancements

- feat(settings): display frontend/backend versions and warn on client-server mismatch by [@Ludy87](https://github.com/Ludy87) in [#5571](https://github.com/Stirling-Tools/Stirling-PDF/pull/5571)
- Support multiple pipeline watch directories and configurable pipeline base path by [@Frooodle](https://github.com/Frooodle) in [#5545](https://github.com/Stirling-Tools/Stirling-PDF/pull/5545)

##### Minor Enhancements

- Stop type checking TypeScript files that won't be run by [@jbrunton96](https://github.com/jbrunton96) in [#5607](https://github.com/Stirling-Tools/Stirling-PDF/pull/5607)
- Fixed missing AuthnRequest bug by [@DarioGii](https://github.com/DarioGii) in [#5606](https://github.com/Stirling-Tools/Stirling-PDF/pull/5606)
- Update links to Docs by [@numanair](https://github.com/numanair) in [#5611](https://github.com/Stirling-Tools/Stirling-PDF/pull/5611)
- fix(frontend): prevent hydration errors in admin security form and improve autofill support by [@Ludy87](https://github.com/Ludy87) in [#5613](https://github.com/Stirling-Tools/Stirling-PDF/pull/5613)
- fix(auth): align token refresh handling with updated backend response by [@Ludy87](https://github.com/Ludy87) in [#5609](https://github.com/Stirling-Tools/Stirling-PDF/pull/5609)
- always allow tauri cors by [@Frooodle](https://github.com/Frooodle) in [#5616](https://github.com/Stirling-Tools/Stirling-PDF/pull/5616)
- Bug/pageeditor virtualisation by [@reecebrowne](https://github.com/reecebrowne) in [#5614](https://github.com/Stirling-Tools/Stirling-PDF/pull/5614)
- Stop attempting to refresh Spring tokens in desktop by [@Frooodle](https://github.com/Frooodle) in [#5610](https://github.com/Stirling-Tools/Stirling-PDF/pull/5610)

##### Other Changes

- Update Python dependencies in requirements files by [@Ludy87](https://github.com/Ludy87) in [#5627](https://github.com/Stirling-Tools/Stirling-PDF/pull/5627)
- Pin GitHub Actions and add runner hardening by [@Ludy87](https://github.com/Ludy87) in [#5628](https://github.com/Stirling-Tools/Stirling-PDF/pull/5628)

##### New Contributors

- [@numanair](https://github.com/numanair) made their first contribution in [#5611](https://github.com/Stirling-Tools/Stirling-PDF/pull/5611)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.2...v2.4.3>

---
##### [\`2.4.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.2)

This is a quick update including

- Fixes for Audit display failing under certain scenarios
- Fix for tools not being correctly disabled via disable-endpoints settings
- Text editor font rendering fixes
- New Variables for Stamp PDF feature!

##### What's Changed

##### Enhancements

- feat(stamp): add dynamic variables and templates for stamp text customization by [@balazs-szucs](https://github.com/balazs-szucs) in [#5546](https://github.com/Stirling-Tools/Stirling-PDF/pull/5546)

##### Minor Enhancements

- Fix tool disabling by [@Frooodle](https://github.com/Frooodle) in [#5585](https://github.com/Stirling-Tools/Stirling-PDF/pull/5585)
- Fix Audit & Usage Analytics Sections by [@DarioGii](https://github.com/DarioGii) in [#5586](https://github.com/Stirling-Tools/Stirling-PDF/pull/5586)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5538](https://github.com/Stirling-Tools/Stirling-PDF/pull/5538)

##### Other Changes

- fix: PDF Text Editor file open by [@bittoby](https://github.com/bittoby) in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

##### New Contributors

- [@bittoby](https://github.com/bittoby) made their first contribution in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.1...v2.4.2>

<!-- Release notes generated using configuration in .github/release.yml at v2.4.2 -->

##### What's Changed

##### Enhancements

- feat(stamp): add dynamic variables and templates for stamp text customization by [@balazs-szucs](https://github.com/balazs-szucs) in [#5546](https://github.com/Stirling-Tools/Stirling-PDF/pull/5546)

##### Minor Enhancements

- Fix tool disabling by [@Frooodle](https://github.com/Frooodle) in [#5585](https://github.com/Stirling-Tools/Stirling-PDF/pull/5585)
- Fix Audit & Usage Analytics Sections by [@DarioGii](https://github.com/DarioGii) in [#5586](https://github.com/Stirling-Tools/Stirling-PDF/pull/5586)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5538](https://github.com/Stirling-Tools/Stirling-PDF/pull/5538)

##### Other Changes

- fix: PDF Text Editor file open by [@bittoby](https://github.com/bittoby) in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

##### New Contributors

- [@bittoby](https://github.com/bittoby) made their first contribution in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.1...v2.4.2>

---
##### [\`2.4.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.1)

Lots of bug fixes today!
Fix for HTTPS connection for desktop mode
Xframe option now in settings.yml and options menu for iframe support
Various other bug fixes and dependencies updates!
Mac desktop not starting correctly

##### What's Changed

##### Enhancements

- deps(frontend, tauri): update Tauri, Rust crates, and frontend dependencies by [@Ludy87](https://github.com/Ludy87) in [#5569](https://github.com/Stirling-Tools/Stirling-PDF/pull/5569)

##### Minor Enhancements

- pipeline fixes for naming issues  by [@Frooodle](https://github.com/Frooodle) in [#5570](https://github.com/Stirling-Tools/Stirling-PDF/pull/5570)
- xframe fix new by [@Frooodle](https://github.com/Frooodle) in [#5580](https://github.com/Stirling-Tools/Stirling-PDF/pull/5580)
- tool tags by [@Frooodle](https://github.com/Frooodle) in [#5568](https://github.com/Stirling-Tools/Stirling-PDF/pull/5568)
- deps(embedPDF): Bump codebase to embedPDF v2.3.0 and adjust codebase for new features by [@balazs-szucs](https://github.com/balazs-szucs) in [#5567](https://github.com/Stirling-Tools/Stirling-PDF/pull/5567)
- possible login fixes by [@Frooodle](https://github.com/Frooodle) in [#5444](https://github.com/Stirling-Tools/Stirling-PDF/pull/5444)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5581](https://github.com/Stirling-Tools/Stirling-PDF/pull/5581)

##### Docker Updates

- chore(ci): remove automated version sync job from build workflow by [@Ludy87](https://github.com/Ludy87) in [#5547](https://github.com/Stirling-Tools/Stirling-PDF/pull/5547)

##### Other Changes

- build(deps): bump pypdf from 6.6.0 to 6.6.2 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5577](https://github.com/Stirling-Tools/Stirling-PDF/pull/5577)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.0...v2.4.1>

---
##### [\`2.4.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.0)

Lots of new features in this release

- database backup management (Only for internal H2 database users)
- Full 2FA support with One-time-password auth code app support!
- Get info supporting better compliance verification
- PDF/X conversions
- automation tool now export into folder scan JSONs for folder automation

Bug fixes for

- Sign tool
- SSO user creation
- addStamp not handling timestamps

Thanks as always for all the fixes and work everyone has been doing! such as [@balazs-szucs](https://github.com/balazs-szucs) or the new bug fix from [@Joey4](https://github.com/Joey4) !
Special thanks to [@Ludy87](https://github.com/Ludy87) for introducing the awesome 2FA feature!

##### What's Changed

##### Enhancements

- feat(admin): add H2 database backup & restore management to admin UI by [@Ludy87](https://github.com/Ludy87) in [#5528](https://github.com/Stirling-Tools/Stirling-PDF/pull/5528)
- feat(frontend): enhance icon detection and update config navigation icon by [@Ludy87](https://github.com/Ludy87) in [#5524](https://github.com/Stirling-Tools/Stirling-PDF/pull/5524)
- feat(security): add TOTP-based multi-factor authentication with backend and UI support by [@Ludy87](https://github.com/Ludy87) in [#5417](https://github.com/Stirling-Tools/Stirling-PDF/pull/5417)
- feat(compliance): implement compliance verfication for get info on PDF by [@balazs-szucs](https://github.com/balazs-szucs) in [#5435](https://github.com/Stirling-Tools/Stirling-PDF/pull/5435)

##### Minor Enhancements

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5530](https://github.com/Stirling-Tools/Stirling-PDF/pull/5530)
- fix(annotations): fix error 300 on sign frontend by [@balazs-szucs](https://github.com/balazs-szucs) in [#5536](https://github.com/Stirling-Tools/Stirling-PDF/pull/5536)
- Fix: Whitelist health endpoints in Security and Enterprise Filter + fix keep original commit by [@Frooodle](https://github.com/Frooodle) in [#5494](https://github.com/Stirling-Tools/Stirling-PDF/pull/5494)
- API cleanups by [@Frooodle](https://github.com/Frooodle) in [#5537](https://github.com/Stirling-Tools/Stirling-PDF/pull/5537)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5490](https://github.com/Stirling-Tools/Stirling-PDF/pull/5490)
- refactor(security): clean up SSO handling, harden URL parsing, and bump dependencies by [@Ludy87](https://github.com/Ludy87) in [#5523](https://github.com/Stirling-Tools/Stirling-PDF/pull/5523)
- fix(common): 🛡️CWE-681 & CWE-197 eliminate tainted numeric casts in size parsing by using BigDecimal with range guards by [@Ludy87](https://github.com/Ludy87) in [#5521](https://github.com/Stirling-Tools/Stirling-PDF/pull/5521)
- build(deps): bump nginx from `c083c37` to `b0f7830` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5500](https://github.com/Stirling-Tools/Stirling-PDF/pull/5500)
- build(deps): bump node from `f4769ca` to `e80397b` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5498](https://github.com/Stirling-Tools/Stirling-PDF/pull/5498)
- Fix V2 SSO user creation by [@Frooodle](https://github.com/Frooodle) in [#5079](https://github.com/Stirling-Tools/Stirling-PDF/pull/5079)
- removal of old java desktop + workspace change in tauri by [@Frooodle](https://github.com/Frooodle) in [#5459](https://github.com/Stirling-Tools/Stirling-PDF/pull/5459)
- Date and time placeholders in addTextStamp are not working by [@Joey4](https://github.com/Joey4) in [#5446](https://github.com/Stirling-Tools/Stirling-PDF/pull/5446)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5539](https://github.com/Stirling-Tools/Stirling-PDF/pull/5539)
- \[V2] feat(convert): add PDF/X export option by [@balazs-szucs](https://github.com/balazs-szucs) in [#5285](https://github.com/Stirling-Tools/Stirling-PDF/pull/5285)
- V2 Show enterprise demo messages for audit and usage by [@Frooodle](https://github.com/Frooodle) in [#5226](https://github.com/Stirling-Tools/Stirling-PDF/pull/5226)
- Export folder scanning by [@Frooodle](https://github.com/Frooodle) in [#5544](https://github.com/Stirling-Tools/Stirling-PDF/pull/5544)
- translations by [@Frooodle](https://github.com/Frooodle) in [#5541](https://github.com/Stirling-Tools/Stirling-PDF/pull/5541)

##### Docker Updates

- Add sync-versions job to GitHub Actions workflow by [@Ludy87](https://github.com/Ludy87) in [#5228](https://github.com/Stirling-Tools/Stirling-PDF/pull/5228)
- build(deps): bump debian from `f668110` to `ed542b2` in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5495](https://github.com/Stirling-Tools/Stirling-PDF/pull/5495)

##### Other Changes

- build(deps): bump logback from 1.5.23 to 1.5.24 by [@dependabot](https://github.com/dependabot)\[bot] in [#5468](https://github.com/Stirling-Tools/Stirling-PDF/pull/5468)
- build(deps): bump io.micrometer:micrometer-core from 1.16.1 to 1.16.2 by [@dependabot](https://github.com/dependabot)\[bot] in [#5466](https://github.com/Stirling-Tools/Stirling-PDF/pull/5466)

##### New Contributors

- [@Joey4](https://github.com/Joey4) made their first contribution in [#5446](https://github.com/Stirling-Tools/Stirling-PDF/pull/5446)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.3.1...v2.4.0>

---
##### [\`2.3.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.3.1)

Several bug fixes , including

- Scroll bar not showing correctly in settings menu
- Automate menus showing options correctly

and several other change,s such as SVG to PDF conversion and performance changes throughout app

##### What's Changed

##### Enhancements

- feat(conversion): add SVG to PDF conversion functionality by [@balazs-szucs](https://github.com/balazs-szucs) in [#5431](https://github.com/Stirling-Tools/Stirling-PDF/pull/5431)
- feat(pipeline): improve file processing with resource management and temp file handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5488](https://github.com/Stirling-Tools/Stirling-PDF/pull/5488)
- feat(admin): add tessdata language management for OCR and download support by [@Ludy87](https://github.com/Ludy87) in [#5519](https://github.com/Stirling-Tools/Stirling-PDF/pull/5519)

##### Minor Enhancements

- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5489](https://github.com/Stirling-Tools/Stirling-PDF/pull/5489)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5484](https://github.com/Stirling-Tools/Stirling-PDF/pull/5484)
- \[V2] fix(automation): enhance parameter handling and default values across operations, fix error in ManyToOne tools by [@balazs-szucs](https://github.com/balazs-szucs) in [#5123](https://github.com/Stirling-Tools/Stirling-PDF/pull/5123)
- scrollbar fixes by [@Frooodle](https://github.com/Frooodle) in [#5529](https://github.com/Stirling-Tools/Stirling-PDF/pull/5529)
- Fix hook ordering for endpoint name resolution by [@Frooodle](https://github.com/Frooodle) in [#5517](https://github.com/Stirling-Tools/Stirling-PDF/pull/5517)
- fix(automation): add zIndex and withinPortal props to dropdown components for improved UI consistency by [@balazs-szucs](https://github.com/balazs-szucs) in [#5527](https://github.com/Stirling-Tools/Stirling-PDF/pull/5527)
- refactor: remove legacy Thymeleaf web UI controllers and templates by [@Ludy87](https://github.com/Ludy87) in [#5406](https://github.com/Stirling-Tools/Stirling-PDF/pull/5406)
- fix(pipeline): avoid bad multipart by letting RestTemplate set boundary by [@Ludy87](https://github.com/Ludy87) in [#5522](https://github.com/Stirling-Tools/Stirling-PDF/pull/5522)
- chore(i18n): update and expand Dutch (nl-NL) translations by [@Stephan-P](https://github.com/Stephan-P) in [#5355](https://github.com/Stirling-Tools/Stirling-PDF/pull/5355)
- Update Italian translations by [@albanobattistella](https://github.com/albanobattistella) in [#5508](https://github.com/Stirling-Tools/Stirling-PDF/pull/5508)

##### Docker Updates

- chore(ci): enable Gradle dependency caching across GitHub workflows by [@Ludy87](https://github.com/Ludy87) in [#5400](https://github.com/Stirling-Tools/Stirling-PDF/pull/5400)
- build(deps): bump actions/checkout from 4.2.2 to 6.0.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5465](https://github.com/Stirling-Tools/Stirling-PDF/pull/5465)

##### Development Tools

- build(deps-dev): bump stylelint-config-standard from 39.0.1 to 40.0.0 in /devTools by [@dependabot](https://github.com/dependabot)\[bot] in [#5504](https://github.com/Stirling-Tools/Stirling-PDF/pull/5504)

##### Other Changes

- build(deps): bump actions/download-artifact from 6.0.0 to 7.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5503](https://github.com/Stirling-Tools/Stirling-PDF/pull/5503)
- build(deps): bump reportlab from 4.4.5 to 4.4.9 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5505](https://github.com/Stirling-Tools/Stirling-PDF/pull/5505)

---
##### [\`2.3.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.3.0)

Several important bug fixes in this release related to

- File conversion threading
- Non-roman alphabet files processing incorrectly
- Desktop app bugs (Lots more fixes coming!)
- And many others!

We also have some really cool features introduced such as

- Telegram bot (In Connections menu or settings.yml)
- PDF to EPUB and AZW3
- MSG support

##### What's Changed

##### Enhancements

- feat(build): enhance JaCoCo reporting with coverage summary and enforce thresholds by [@Ludy87](https://github.com/Ludy87) in [#5352](https://github.com/Stirling-Tools/Stirling-PDF/pull/5352)
- feat(ui): prevent self-modification in People management and highlight current user by [@Ludy87](https://github.com/Ludy87) in [#5441](https://github.com/Stirling-Tools/Stirling-PDF/pull/5441)
- feat(conversion): refactor EML parser to use Simple Java Mail library and add MSG support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5427](https://github.com/Stirling-Tools/Stirling-PDF/pull/5427)
- feat(conversion): add PDF to EPUB/AZW3 conversion support and settings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5434](https://github.com/Stirling-Tools/Stirling-PDF/pull/5434)

##### Minor Enhancements

- build(ci): pin base container images, switch npm install to npm ci, and harden EML error handling by [@Ludy87](https://github.com/Ludy87) in [#5353](https://github.com/Stirling-Tools/Stirling-PDF/pull/5353)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5426](https://github.com/Stirling-Tools/Stirling-PDF/pull/5426)
- Updated ga-IE translations and added keys to ignore list by [@aindriu80](https://github.com/aindriu80) in [#5178](https://github.com/Stirling-Tools/Stirling-PDF/pull/5178)
- fix(api): return JSON responses for admin settings + API key endpoints to prevent Tauri client parse errors by [@Ludy87](https://github.com/Ludy87) in [#5437](https://github.com/Stirling-Tools/Stirling-PDF/pull/5437)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5363](https://github.com/Stirling-Tools/Stirling-PDF/pull/5363)
- build(deps): bump node from 20-alpine to 25-alpine in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5311](https://github.com/Stirling-Tools/Stirling-PDF/pull/5311)
- build(deps): bump nginx from `8491795` to `c083c37` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5448](https://github.com/Stirling-Tools/Stirling-PDF/pull/5448)
- build(deps): bump globals from 16.5.0 to 17.0.0 in /frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5413](https://github.com/Stirling-Tools/Stirling-PDF/pull/5413)
- Add Telegram bot integration for pipeline processing by [@Ludy87](https://github.com/Ludy87) in [#5185](https://github.com/Stirling-Tools/Stirling-PDF/pull/5185)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5458](https://github.com/Stirling-Tools/Stirling-PDF/pull/5458)
- translations by [@Frooodle](https://github.com/Frooodle) in [#5469](https://github.com/Stirling-Tools/Stirling-PDF/pull/5469)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5473](https://github.com/Stirling-Tools/Stirling-PDF/pull/5473)
- fix(auth): remove unnecessary authentication requirement from SignatureController by [@balazs-szucs](https://github.com/balazs-szucs) in [#5477](https://github.com/Stirling-Tools/Stirling-PDF/pull/5477)
- Make controls sticky by [@reecebrowne](https://github.com/reecebrowne) in [#5478](https://github.com/Stirling-Tools/Stirling-PDF/pull/5478)
- fix: update broken enterprise docs link from /Pro to /Paid-Offerings by [@krizhnaa](https://github.com/krizhnaa) in [#5471](https://github.com/Stirling-Tools/Stirling-PDF/pull/5471)
- Libre threads by [@Frooodle](https://github.com/Frooodle) in [#5303](https://github.com/Stirling-Tools/Stirling-PDF/pull/5303)

##### Docker Updates

- build(deps): bump docker/setup-qemu-action from 3.6.0 to 3.7.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5326](https://github.com/Stirling-Tools/Stirling-PDF/pull/5326)
- build(deps): bump step-security/harden-runner from 2.12.1 to 2.14.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5324](https://github.com/Stirling-Tools/Stirling-PDF/pull/5324)
- ci(build): scope Docker layer cache per artifact to avoid cross-contamination by [@Ludy87](https://github.com/Ludy87) in [#5453](https://github.com/Stirling-Tools/Stirling-PDF/pull/5453)
- build(deps): bump alpine from 3.22.2 to 3.23.2 in /docker/backend by [@dependabot](https://github.com/dependabot)\[bot] in [#5316](https://github.com/Stirling-Tools/Stirling-PDF/pull/5316)
- build(deps): bump alpine from 3.22.1 to 3.23.2 in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5319](https://github.com/Stirling-Tools/Stirling-PDF/pull/5319)
- build(deps): bump debian from `1c25564` to `449673e` in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5357](https://github.com/Stirling-Tools/Stirling-PDF/pull/5357)
- build(deps): bump docker/setup-buildx-action from 3.11.1 to 3.12.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5463](https://github.com/Stirling-Tools/Stirling-PDF/pull/5463)
- Docker use latest libreoffice and fonts by [@Frooodle](https://github.com/Frooodle) in [#5482](https://github.com/Stirling-Tools/Stirling-PDF/pull/5482)

##### Translation Changes

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5462](https://github.com/Stirling-Tools/Stirling-PDF/pull/5462)

##### Other Changes

- fix(ci): read workflow\_dispatch PR number from inputs.pr in PR auto-deploy workflow by [@Ludy87](https://github.com/Ludy87) in [#5380](https://github.com/Stirling-Tools/Stirling-PDF/pull/5380)
- build(deps): bump github/codeql-action from 4.31.5 to 4.31.10 by [@dependabot](https://github.com/dependabot)\[bot] in [#5449](https://github.com/Stirling-Tools/Stirling-PDF/pull/5449)
- build(deps): bump pypdf from 6.4.0 to 6.6.0 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5422](https://github.com/Stirling-Tools/Stirling-PDF/pull/5422)
- build(deps): bump io.micrometer:micrometer-core from 1.16.0 to 1.16.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5358](https://github.com/Stirling-Tools/Stirling-PDF/pull/5358)
- Update user login conditions in workflow by [@Frooodle](https://github.com/Frooodle) in [#5457](https://github.com/Stirling-Tools/Stirling-PDF/pull/5457)
- fix(core): reinstall frontend dependencies when iconify package is missing by [@Ludy87](https://github.com/Ludy87) in [#5432](https://github.com/Stirling-Tools/Stirling-PDF/pull/5432)
- fix(translations): improve translation merger CLI and sync missing UI strings across locales by [@Ludy87](https://github.com/Ludy87) in [#5309](https://github.com/Stirling-Tools/Stirling-PDF/pull/5309)
- build(deps): bump urllib3 from 2.5.0 to 2.6.3 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5456](https://github.com/Stirling-Tools/Stirling-PDF/pull/5456)
- build(deps): bump docker/login-action from 3.4.0 to 3.6.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5464](https://github.com/Stirling-Tools/Stirling-PDF/pull/5464)

##### New Contributors

- [@krizhnaa](https://github.com/krizhnaa) made their first contribution in [#5471](https://github.com/Stirling-Tools/Stirling-PDF/pull/5471)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.2.1...v2.3.0>

<!-- Release notes generated using configuration in .github/release.yml at v2.3.0 -->

##### What's Changed

##### Enhancements

- feat(build): enhance JaCoCo reporting with coverage summary and enforce thresholds by [@Ludy87](https://github.com/Ludy87) in [#5352](https://github.com/Stirling-Tools/Stirling-PDF/pull/5352)
- feat(ui): prevent self-modification in People management and highlight current user by [@Ludy87](https://github.com/Ludy87) in [#5441](https://github.com/Stirling-Tools/Stirling-PDF/pull/5441)
- feat(conversion): refactor EML parser to use Simple Java Mail library and add MSG support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5427](https://github.com/Stirling-Tools/Stirling-PDF/pull/5427)
- feat(conversion): add PDF to EPUB/AZW3 conversion support and settings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5434](https://github.com/Stirling-Tools/Stirling-PDF/pull/5434)

##### Minor Enhancements

- build(ci): pin base container images, switch npm install to npm ci, and harden EML error handling by [@Ludy87](https://github.com/Ludy87) in [#5353](https://github.com/Stirling-Tools/Stirling-PDF/pull/5353)
- 🤖 format everything with pre-commit by stirlingbot by [@stirli…
renovate bot added a commit to sdwilsh/ansible-playbooks that referenced this pull request Mar 13, 2026
… docker tag to v2

##### [\`2.7.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.2)

Had a bug where self-hosted connections via desktop would stop working, thinking they were connecting to a non selfhost instance

#### What's Changed

##### Minor Enhancements

- Check if saas before blocking credit insufficiencies by [@ConnorYoh](https://github.com/ConnorYoh) in [#5929](https://github.com/Stirling-Tools/Stirling-PDF/pull/5929)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.7.1...v2.7.2>

<!-- Release notes generated using configuration in .github/release.yml at v2.7.2 -->

#### What's Changed

##### Minor Enhancements

- Check if saas before blocking credit insufficiencies by [@ConnorYoh](https://github.com/ConnorYoh) in [#5929](https://github.com/Stirling-Tools/Stirling-PDF/pull/5929)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.7.1...v2.7.2>

---
##### [\`2.7.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.1)

Bug fixes for various issues such as:

- Desktop conversions mistakenly doing a 'save' to 'save as'
- Desktop 'open with PDF' having invalid description on windows
- Posthog still creating a cookie even when its not used (still a  fully unused cookie tho)
- Desktop not falling back to local connection if on selfhosted and server down
- Rotate on large docs not always working correctly

#### What's Changed

##### Minor Enhancements

- Chore/v2/transforms as root by [@reecebrowne](https://github.com/reecebrowne) in [#5868](https://github.com/Stirling-Tools/Stirling-PDF/pull/5868)
- Limit PostHog cookie to Stirling PDF's subdomain only by [@bban160](https://github.com/bban160) in [#5882](https://github.com/Stirling-Tools/Stirling-PDF/pull/5882)
- Posthog-fixes by [@ConnorYoh](https://github.com/ConnorYoh) in [#5901](https://github.com/Stirling-Tools/Stirling-PDF/pull/5901)
- Get rid of bad description for file association on Windows by [@jbrunton96](https://github.com/jbrunton96) in [#5905](https://github.com/Stirling-Tools/Stirling-PDF/pull/5905)
- Desktop: Fallback to local backend if self-hosted server is offline by [@ConnorYoh](https://github.com/ConnorYoh) in [#5880](https://github.com/Stirling-Tools/Stirling-PDF/pull/5880)
- Add SaaS frontend code by [@jbrunton96](https://github.com/jbrunton96) in [#5879](https://github.com/Stirling-Tools/Stirling-PDF/pull/5879)
- Manage state of price-lookup calls by [@ConnorYoh](https://github.com/ConnorYoh) in [#5915](https://github.com/Stirling-Tools/Stirling-PDF/pull/5915)
- Add system for managing env vars by [@jbrunton96](https://github.com/jbrunton96) in [#5902](https://github.com/Stirling-Tools/Stirling-PDF/pull/5902)
- Fix rotate failing on large documents by [@reecebrowne](https://github.com/reecebrowne) in [#5917](https://github.com/Stirling-Tools/Stirling-PDF/pull/5917)
- Cleanup-conversion-translations by [@ConnorYoh](https://github.com/ConnorYoh) in [#5906](https://github.com/Stirling-Tools/Stirling-PDF/pull/5906)
- Update Italian translations by [@albanobattistella](https://github.com/albanobattistella) in [#5884](https://github.com/Stirling-Tools/Stirling-PDF/pull/5884)

##### Development Tools

- Move AI advice to AGENTS.md and add symlink from CLAUDE.md by [@jbrunton96](https://github.com/jbrunton96) in [#5914](https://github.com/Stirling-Tools/Stirling-PDF/pull/5914)

#### New Contributors

- [@bban160](https://github.com/bban160) made their first contribution in [#5882](https://github.com/Stirling-Tools/Stirling-PDF/pull/5882)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.7.0...v2.7.1>

---
##### [\`2.7.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.0)

Lots of changes in this release yet again!

App:

- option to hide google drive and mobile upload when disabled in 'my files' view
- New search bar to search settings menu easily
- Auditing has improved, new filehash/author options are supported with better reporting overall (We recommend enterprise users to backup their Stirling database before updating to be safe, although expect no issues)

Desktop:

- Desktop app correctly returns to its previous window state and location as its previous launch
- Desktop app supports OS notifications if it finishes working on tasks whilst minimised

Bugs fixed:

- Pipeline erroring in merge tool and others based on parameters
- Certification signature stamps not showing correctly in the viewer
- English was being enabled even when it was disabled in settings

##### What's Changed

##### Enhancements

- settings menu reworks by [@Frooodle](https://github.com/Frooodle) in [#5864](https://github.com/Stirling-Tools/Stirling-PDF/pull/5864)

##### Minor Enhancements

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5775](https://github.com/Stirling-Tools/Stirling-PDF/pull/5775)
- Persist Tauri window state between launches by [@Frooodle](https://github.com/Frooodle) in [#5871](https://github.com/Stirling-Tools/Stirling-PDF/pull/5871)
- tauri notifications by [@Frooodle](https://github.com/Frooodle) in [#5875](https://github.com/Stirling-Tools/Stirling-PDF/pull/5875)
- Audit fixes and improvements by [@Frooodle](https://github.com/Frooodle) in [#5835](https://github.com/Stirling-Tools/Stirling-PDF/pull/5835)
- fix: merge pdf pipeline validation by [@RenzoMXD](https://github.com/RenzoMXD) in [#5799](https://github.com/Stirling-Tools/Stirling-PDF/pull/5799)
- Fix signatures not showing by [@ConnorYoh](https://github.com/ConnorYoh) in [#5872](https://github.com/Stirling-Tools/Stirling-PDF/pull/5872)
- Add the production billing portal link for static plan page by [@ConnorYoh](https://github.com/ConnorYoh) in [#5860](https://github.com/Stirling-Tools/Stirling-PDF/pull/5860)
- option to hide google drive and add settings by [@Frooodle](https://github.com/Frooodle) in [#5863](https://github.com/Stirling-Tools/Stirling-PDF/pull/5863)
- stop enabling english by [@Frooodle](https://github.com/Frooodle) in [#5874](https://github.com/Stirling-Tools/Stirling-PDF/pull/5874)
- Add searchable settings selector to AppConfigModal and improve nav behavior by [@Frooodle](https://github.com/Frooodle) in [#5873](https://github.com/Stirling-Tools/Stirling-PDF/pull/5873)

##### Docker Updates

- build(deps): bump actions/setup-node from 4.4.0 to 6.2.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5691](https://github.com/Stirling-Tools/Stirling-PDF/pull/5691)

##### Other Changes

- Don't build mac if you don't have the secrets by [@ConnorYoh](https://github.com/ConnorYoh) in [#5861](https://github.com/Stirling-Tools/Stirling-PDF/pull/5861)
- build(deps): bump digicert/ssm-code-signing from 1.2.0 to 1.2.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5692](https://github.com/Stirling-Tools/Stirling-PDF/pull/5692)
- build(deps): bump pypdf from 6.7.4 to 6.7.5 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5853](https://github.com/Stirling-Tools/Stirling-PDF/pull/5853)
- translations and version bump by [@Frooodle](https://github.com/Frooodle) in [#5878](https://github.com/Stirling-Tools/Stirling-PDF/pull/5878)

##### New Contributors

- [@RenzoMXD](https://github.com/RenzoMXD) made their first contribution in [#5799](https://github.com/Stirling-Tools/Stirling-PDF/pull/5799)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.6.0...v2.7.0>

---
##### [\`2.6.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.6.0)

In this update, we have drastically improved Stirling PDFs memory usage and startup performance in our testing you should see around a 30% reduction in both idle usage and startup speed
We have also dramatically reduced the filesize of the docker by 30-40%

Breaking updates:
No longer supporting JDK 17, we have moved to JDK 21-25 and are recommending all jar installs to upgrade to JDK 25 for best performance

Other updates

- Desktop now supports running non installed tools by optionally connecting to Stirling cloud server IF a user chooses to and is already running via login to cloud
- Several dependencies have been updated
- Security patches

Bug fixes

- Health check failing under certain auth scenarios
- Crop not working for desktop

##### What's Changed

##### Enhancements

- feat(docker): update base images to Java 25, Spring 4, Jackson 3, Gradle 9 and optimize JVM options (Project Lilliput) by [@balazs-szucs](https://github.com/balazs-szucs) in [#5725](https://github.com/Stirling-Tools/Stirling-PDF/pull/5725)
- feat(annotation): add moveAnnotation API for efficient repositioning of annotations, and bump embed to 2.7.0 by [@balazs-szucs](https://github.com/balazs-szucs) in [#5809](https://github.com/Stirling-Tools/Stirling-PDF/pull/5809)
- feat(conversion): switch PDF input engine to pdftohtml for improved performance and reduced dependencies by [@balazs-szucs](https://github.com/balazs-szucs) in [#5820](https://github.com/Stirling-Tools/Stirling-PDF/pull/5820)
- feat(aot): add aot-diagnostics.sh for AOT cache diagnostics and validation by [@balazs-szucs](https://github.com/balazs-szucs) in [#5848](https://github.com/Stirling-Tools/Stirling-PDF/pull/5848)

##### Minor Enhancements

- Update frontend minor package versions by [@jbrunton96](https://github.com/jbrunton96) in [#5787](https://github.com/Stirling-Tools/Stirling-PDF/pull/5787)
- Sync up Tauri versions by [@jbrunton96](https://github.com/jbrunton96) in [#5789](https://github.com/Stirling-Tools/Stirling-PDF/pull/5789)
- zip and response issues by [@Frooodle](https://github.com/Frooodle) in [#5786](https://github.com/Stirling-Tools/Stirling-PDF/pull/5786)
- Change to use dpdm for circular import scanning by [@jbrunton96](https://github.com/jbrunton96) in [#5788](https://github.com/Stirling-Tools/Stirling-PDF/pull/5788)
- Cachefixing test by [@Frooodle](https://github.com/Frooodle) in [#5793](https://github.com/Stirling-Tools/Stirling-PDF/pull/5793)
- Desktop connection SaaS: config, billing, team support by [@ConnorYoh](https://github.com/ConnorYoh) in [#5768](https://github.com/Stirling-Tools/Stirling-PDF/pull/5768)
- Switch to use ESLint 10 by [@jbrunton96](https://github.com/jbrunton96) in [#5794](https://github.com/Stirling-Tools/Stirling-PDF/pull/5794)
- cleanups by [@Frooodle](https://github.com/Frooodle) in [#5795](https://github.com/Stirling-Tools/Stirling-PDF/pull/5795)
- DocumentBuilderFactory limiting by [@Frooodle](https://github.com/Frooodle) in [#5797](https://github.com/Stirling-Tools/Stirling-PDF/pull/5797)
- lint by [@reecebrowne](https://github.com/reecebrowne) in [#5802](https://github.com/Stirling-Tools/Stirling-PDF/pull/5802)
- Harden shared signature endpoints  by [@Frooodle](https://github.com/Frooodle) in [#5806](https://github.com/Stirling-Tools/Stirling-PDF/pull/5806)
- open-saml bumps by [@Frooodle](https://github.com/Frooodle) in [#5805](https://github.com/Stirling-Tools/Stirling-PDF/pull/5805)
- fix split cuased by defaultParameters breaking dynamic endpoint tools by [@Frooodle](https://github.com/Frooodle) in [#5838](https://github.com/Stirling-Tools/Stirling-PDF/pull/5838)
- hardening by [@Frooodle](https://github.com/Frooodle) in [#5807](https://github.com/Stirling-Tools/Stirling-PDF/pull/5807)
- Fix health status checks falling under mettric flag by [@Frooodle](https://github.com/Frooodle) in [#5821](https://github.com/Stirling-Tools/Stirling-PDF/pull/5821)
- Frontend and Desktop audit fixes by [@ConnorYoh](https://github.com/ConnorYoh) in [#5840](https://github.com/Stirling-Tools/Stirling-PDF/pull/5840)
- refactor(merge,split,json): adopt streaming approach and standardize types, address gradle warnings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5803](https://github.com/Stirling-Tools/Stirling-PDF/pull/5803)
- fallback for /api/v1/config/endpoints-availability by [@ConnorYoh](https://github.com/ConnorYoh) in [#5842](https://github.com/Stirling-Tools/Stirling-PDF/pull/5842)
- Add check for ghostscript before plowing on with removeDataOutsideCrop by [@ConnorYoh](https://github.com/ConnorYoh) in [#5845](https://github.com/Stirling-Tools/Stirling-PDF/pull/5845)
- Fix split tooltips by [@reecebrowne](https://github.com/reecebrowne) in [#5847](https://github.com/Stirling-Tools/Stirling-PDF/pull/5847)

##### Docker Updates

- disable other dockers by [@Frooodle](https://github.com/Frooodle) in [#5792](https://github.com/Stirling-Tools/Stirling-PDF/pull/5792)
- docker cache fix by [@Frooodle](https://github.com/Frooodle) in [#5801](https://github.com/Stirling-Tools/Stirling-PDF/pull/5801)
- \[Aikido] AI Fix for 3rd party Github Actions should be pinned by [@aikido-autofix](https://github.com/aikido-autofix)\[bot] in [#5817](https://github.com/Stirling-Tools/Stirling-PDF/pull/5817)
- fix(aot): use Spring Boot exploded layer format for aot cache by [@balazs-szucs](https://github.com/balazs-szucs) in [#5811](https://github.com/Stirling-Tools/Stirling-PDF/pull/5811)
- \[StepSecurity] Apply security best practices by [@step-security-bot](https://github.com/step-security-bot) in [#5830](https://github.com/Stirling-Tools/Stirling-PDF/pull/5830)
- tauri jdk25 and docs by [@Frooodle](https://github.com/Frooodle) in [#5814](https://github.com/Stirling-Tools/Stirling-PDF/pull/5814)

##### Development Tools

- build(deps): bump ajv from 8.17.1 to 8.18.0 in /devTools in the npm\_and\_yarn group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5774](https://github.com/Stirling-Tools/Stirling-PDF/pull/5774)
- build(deps-dev): bump stylelint from 16.26.1 to 17.4.0 in /devTools by [@dependabot](https://github.com/dependabot)\[bot] in [#5822](https://github.com/Stirling-Tools/Stirling-PDF/pull/5822)

##### Other Changes

- build(deps-dev): bump pillow from 12.1.0 to 12.1.1 in /.github/scripts in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5720](https://github.com/Stirling-Tools/Stirling-PDF/pull/5720)
- build(deps): bump pillow from 12.1.0 to 12.1.1 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5719](https://github.com/Stirling-Tools/Stirling-PDF/pull/5719)
- deps by [@Frooodle](https://github.com/Frooodle) in [#5796](https://github.com/Stirling-Tools/Stirling-PDF/pull/5796)
- chore(deps): update dependencies for security by [@balazs-szucs](https://github.com/balazs-szucs) in [#5813](https://github.com/Stirling-Tools/Stirling-PDF/pull/5813)
- ci: provide default desktop env vars in tauri GitHub Actions builds by [@Frooodle](https://github.com/Frooodle) in [#5815](https://github.com/Stirling-Tools/Stirling-PDF/pull/5815)
- skip certs by [@Frooodle](https://github.com/Frooodle) in [#5819](https://github.com/Stirling-Tools/Stirling-PDF/pull/5819)
- build(deps): bump pypdf from 6.6.2 to 6.7.4 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5825](https://github.com/Stirling-Tools/Stirling-PDF/pull/5825)
- build(deps): bump github/codeql-action from 4.31.10 to 4.32.4 by [@dependabot](https://github.com/dependabot)\[bot] in [#5833](https://github.com/Stirling-Tools/Stirling-PDF/pull/5833)
- build(deps): bump actions/ai-inference from 2.0.5 to 2.0.7 by [@dependabot](https://github.com/dependabot)\[bot] in [#5831](https://github.com/Stirling-Tools/Stirling-PDF/pull/5831)
- build(deps): bump com.sun.xml.bind:jaxb-core from 2.3.0.1 to 4.0.6 by [@dependabot](https://github.com/dependabot)\[bot] in [#5365](https://github.com/Stirling-Tools/Stirling-PDF/pull/5365)

##### New Contributors

- [@aikido-autofix](https://github.com/aikido-autofix)\[bot] made their first contribution in [#5817](https://github.com/Stirling-Tools/Stirling-PDF/pull/5817)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.3...v2.6.0>

---
##### [\`2.5.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.3)

This release contains:

- New feature for XLSX conversion
- New feature for splitting a page into printable chunks (a3 into 2 a4 etc for posters)
- Keyboard shortcut support for the viewer
- Bug fixes for some viewer issues
- Bug fix for cookie consent showing on desktop builds

##### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@intelliking](https://github.com/intelliking) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

##### New Contributors

- [@intelliking](https://github.com/intelliking) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

<!-- Release notes generated using configuration in .github/release.yml at v2.5.3 -->

##### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@statxc](https://github.com/statxc) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

##### New Contributors

- [@statxc](https://github.com/statxc) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

<!-- Release notes generated using configuration in .github/release.yml at v2.5.3 -->

##### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@statxc](https://github.com/statxc) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

##### New Contributors

- [@statxc](https://github.com/statxc) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

---
##### [\`2.5.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.2)

This is a release for

- Security improvements
- Ruler / Measure support in the viewer
  Bug fixes for:
- writing to forms not working on OSS (package now moved fully to OSS)
- Possible fix for mac desktop issues
- desktop not being detected as desktop all the time
- license checks not having a retry
- desktop having wrong publisher ID

##### What's Changed

##### Enhancements

- Add plist file for Mac permissions by [@jbrunton96](https://github.com/jbrunton96) in [#5756](https://github.com/Stirling-Tools/Stirling-PDF/pull/5756)

##### Minor Enhancements

- ruler support by [@Frooodle](https://github.com/Frooodle) in [#5758](https://github.com/Stirling-Tools/Stirling-PDF/pull/5758)
- fix publishing for tauri author by [@Frooodle](https://github.com/Frooodle) in [#5757](https://github.com/Stirling-Tools/Stirling-PDF/pull/5757)
- dos fixes by [@Frooodle](https://github.com/Frooodle) in [#5759](https://github.com/Stirling-Tools/Stirling-PDF/pull/5759)
- licensere reTry by [@Frooodle](https://github.com/Frooodle) in [#5763](https://github.com/Stirling-Tools/Stirling-PDF/pull/5763)
- authclient by [@Frooodle](https://github.com/Frooodle) in [#5761](https://github.com/Stirling-Tools/Stirling-PDF/pull/5761)
- zipFix by [@Frooodle](https://github.com/Frooodle) in [#5762](https://github.com/Stirling-Tools/Stirling-PDF/pull/5762)
- Update de translation.toml by [@Hugomaulwurf76](https://github.com/Hugomaulwurf76) in [#5736](https://github.com/Stirling-Tools/Stirling-PDF/pull/5736)
- Translate various terms in Italian localization by [@albanobattistella](https://github.com/albanobattistella) in [#5749](https://github.com/Stirling-Tools/Stirling-PDF/pull/5749)
- Move Forms location by [@Frooodle](https://github.com/Frooodle) in [#5769](https://github.com/Stirling-Tools/Stirling-PDF/pull/5769)
- translations ai (please override as you see fit in new PRs these are placeholder) by [@Frooodle](https://github.com/Frooodle) in [#5770](https://github.com/Stirling-Tools/Stirling-PDF/pull/5770)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5675](https://github.com/Stirling-Tools/Stirling-PDF/pull/5675)

##### Other Changes

- build(tauri): enforce Java 17+ requirement in Windows jlink build script by [@Ludy87](https://github.com/Ludy87) in [#5684](https://github.com/Stirling-Tools/Stirling-PDF/pull/5684)

##### New Contributors

- [@Hugomaulwurf76](https://github.com/Hugomaulwurf76) made their first contribution in [#5736](https://github.com/Stirling-Tools/Stirling-PDF/pull/5736)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.1...v2.5.2>

---
##### [\`2.5.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.1)

Several bug fixes in this release

- Login issues showing "something went wrong" when language list = 1
- Forms not showing correctly
- Forms not working on desktop
- Desktop SSO redirect race condition issues
- 431 error for large endpoint for endpoints available

##### What's Changed

##### Minor Enhancements

- Fix SAML login "something went wrong" when language list = 1  by [@Frooodle](https://github.com/Frooodle) in [#5750](https://github.com/Stirling-Tools/Stirling-PDF/pull/5750)
- fix(forms): Update form field UI and behavior for better interactivity and alignment by [@balazs-szucs](https://github.com/balazs-szucs) in [#5747](https://github.com/Stirling-Tools/Stirling-PDF/pull/5747)
- fixes for desktop SSO by [@Frooodle](https://github.com/Frooodle) in [#5751](https://github.com/Stirling-Tools/Stirling-PDF/pull/5751)
- large query reduction by [@Frooodle](https://github.com/Frooodle) in [#5754](https://github.com/Stirling-Tools/Stirling-PDF/pull/5754)
- fix(form-fill): fix hardcoded response by [@balazs-szucs](https://github.com/balazs-szucs) in [#5755](https://github.com/Stirling-Tools/Stirling-PDF/pull/5755)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.0...v2.5.1>

---
##### [\`2.5.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.0)

This is a big update with lots of new functionality and changes like Form fill and redaction/annotation improvements! Also several changes around the login session expiry
Special thanks to [@balazs-szucs](https://github.com/balazs-szucs), who put a lot of work into this release!

New functionality:

- Huge manual redaction changes with colour selection and improved UI
- Add attachment support with sidebar button for viewing attachments etc (Seen in viewer mode)
- FormFill tool with context and UI components for PDF form filling
- Desktop now edits files that have been openned instead of creating new copies
- Extra JWT settings to customise expiry times for desktop and browser
- Add/remove link support

Extra improvements:

- Text selection improvements within the viewer with custom actions
- Improved link handling and link location
- EmbedPDF 2.6.0 upgrade for several bug fixes
- Multiple fixes with the viewer, its functionality, and its export
- PDF Text editor cache / JSON size issues
- Enhanced JWT handling and refreshing for better session management without forced re-logins
- Improved annotation UI
- Files correctly open in the viewer automatically if only 1 file is opened
- Improved tool disable menu to be able to disable all remaining tools and docs

##### What's Changed

##### Enhancements

- feat(redaction): improve manual redaction with color selection and updated UI elements by [@balazs-szucs](https://github.com/balazs-szucs) in [#5679](https://github.com/Stirling-Tools/Stirling-PDF/pull/5679)
- feat(text-selection): implement text selection enhancement for double and triple-click actions by [@balazs-szucs](https://github.com/balazs-szucs) in [#5712](https://github.com/Stirling-Tools/Stirling-PDF/pull/5712)
- feat(linklayer): improve link handling with pdf-lib integration and add link toolbar, add delete link functionality by [@balazs-szucs](https://github.com/balazs-szucs) in [#5715](https://github.com/Stirling-Tools/Stirling-PDF/pull/5715)
- feat(attachments): add attachment support with sidebar and API integration by [@balazs-szucs](https://github.com/balazs-szucs) in [#5673](https://github.com/Stirling-Tools/Stirling-PDF/pull/5673)
- feat(form-fill): FormFill tool with context and UI components for PDF form filling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5711](https://github.com/Stirling-Tools/Stirling-PDF/pull/5711)
- feat(frontend): Upgrade embedPDF to v2.6.0 and migrate to pdf-lib fork, fix attachment/bookmark panel by [@balazs-szucs](https://github.com/balazs-szucs) in [#5723](https://github.com/Stirling-Tools/Stirling-PDF/pull/5723)

##### Minor Enhancements

- Update translation by [@albanobattistella](https://github.com/albanobattistella) in [#5670](https://github.com/Stirling-Tools/Stirling-PDF/pull/5670)
- various  viewer pill fixes by [@reecebrowne](https://github.com/reecebrowne) in [#5714](https://github.com/Stirling-Tools/Stirling-PDF/pull/5714)
- Fix viewer export by [@reecebrowne](https://github.com/reecebrowne) in [#5713](https://github.com/Stirling-Tools/Stirling-PDF/pull/5713)
- fix tool disabling for docs and others by [@Frooodle](https://github.com/Frooodle) in [#5722](https://github.com/Stirling-Tools/Stirling-PDF/pull/5722)
- Preserve local paths for desktop saves by [@Frooodle](https://github.com/Frooodle) in [#5543](https://github.com/Stirling-Tools/Stirling-PDF/pull/5543)
- refactor(api): replace regex string literals with Pattern instances for improved performance and readability by [@balazs-szucs](https://github.com/balazs-szucs) in [#5680](https://github.com/Stirling-Tools/Stirling-PDF/pull/5680)
- refactor: fix homepage file upload path by [@Frooodle](https://github.com/Frooodle) in [#5738](https://github.com/Stirling-Tools/Stirling-PDF/pull/5738)
- PDF Text editor changes by [@Frooodle](https://github.com/Frooodle) in [#5726](https://github.com/Stirling-Tools/Stirling-PDF/pull/5726)
- fix\_env\_files\_for\_tauri by [@ConnorYoh](https://github.com/ConnorYoh) in [#5741](https://github.com/Stirling-Tools/Stirling-PDF/pull/5741)
- JWT enhancements for desktop by [@Frooodle](https://github.com/Frooodle) in [#5742](https://github.com/Stirling-Tools/Stirling-PDF/pull/5742)
- Chore/v2/improve annotation UI by [@reecebrowne](https://github.com/reecebrowne) in [#5724](https://github.com/Stirling-Tools/Stirling-PDF/pull/5724)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.6...v2.5.0>

---
##### [\`2.4.6\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.6)

Several bug fixes for the issues:

- License not always correctly loading due to cache issues
- public endpoints not always accessible when without JWT
- Language not always correctly taking the server's default
- Desktop issues for SAML SSO
- maxFileSize server setting not being handled correctly

As well as

- SSO cleanups
- Extra SSO logging for future issues
- markdown conversion now supports images

##### What's Changed

##### Breaking Changes

- fix(markdown): markdown conversion image handling and zip support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5677](https://github.com/Stirling-Tools/Stirling-PDF/pull/5677)

##### Enhancements

- Enhance SSO SAML in desktop app by [@jbrunton96](https://github.com/jbrunton96) in [#5705](https://github.com/Stirling-Tools/Stirling-PDF/pull/5705)

##### Minor Enhancements

- Fix maxFileSize environment variable support ([#5542](https://github.com/Stirling-Tools/Stirling-PDF/issues/5542)) by [@Eruis2579](https://github.com/Eruis2579) in [#5655](https://github.com/Stirling-Tools/Stirling-PDF/pull/5655)
- Bug fixing and debugs by [@Frooodle](https://github.com/Frooodle) in [#5704](https://github.com/Stirling-Tools/Stirling-PDF/pull/5704)
- fix(api): address potential backend resource leaks and improve frontend accessibility by [@balazs-szucs](https://github.com/balazs-szucs) in [#5678](https://github.com/Stirling-Tools/Stirling-PDF/pull/5678)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5668](https://github.com/Stirling-Tools/Stirling-PDF/pull/5668)
- build(deps): bump com.diffplug.spotless from 8.1.0 to 8.2.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5592](https://github.com/Stirling-Tools/Stirling-PDF/pull/5592)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.5...v2.4.6>

---
##### [\`2.4.5\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.5)

Desktop changes

- Windows desktop MSI to support headless installation with custom parameters to set up server URL and login mode, an example for this would be `msiexec /i "Stirling-PDF-windows-x86_64.msi
  " /qn STIRLING_SERVER_URL="http://192.168.1.53:2357/" STIRLING_LOCK_CONNECTION=1`

`STIRLING_SERVER_URL` auto sets the URL and `STIRLING_LOCK_CONNECTION=1` sets the connection mode to be ONLY self-host server, ensuring no mistaken connections to external servers. Please note this feature is currently in testing, if you have feedback or have tried it please let us know! (Even if it worked perfectly its good to know!)

- SSO UI changes
- support for login method restrictions in desktop
- remembers last entered selfhost URL for easy reconnection

General changes

- SSO functionality cleanups (a few more to come soon!)
- New strict mode for PDF/A conversion for issues were conversation isn't perfect
- redaction improvements

Bug fixes

- SSO auto login mode now working correctly

#### What's Changed

##### Enhancements

- feat:(pdfa-conversion) Implement Strict PDF/A Mode with Verification by [@balazs-szucs](https://github.com/balazs-szucs) in [#5663](https://github.com/Stirling-Tools/Stirling-PDF/pull/5663)
- feat(desktop): show and reuse last used server URL in Setup Wizard by [@Ludy87](https://github.com/Ludy87) in [#5659](https://github.com/Stirling-Tools/Stirling-PDF/pull/5659)
- feat(redaction): update to embedPDF v2.4.0 with unified redaction mode support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5652](https://github.com/Stirling-Tools/Stirling-PDF/pull/5652)

##### Minor Enhancements

- Saml fix by [@Frooodle](https://github.com/Frooodle) in [#5651](https://github.com/Stirling-Tools/Stirling-PDF/pull/5651)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5618](https://github.com/Stirling-Tools/Stirling-PDF/pull/5618)
- fix(frontend): improve synonym search by [@Ludy87](https://github.com/Ludy87) in [#5639](https://github.com/Stirling-Tools/Stirling-PDF/pull/5639)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5666](https://github.com/Stirling-Tools/Stirling-PDF/pull/5666)
- Headless windows installer by [@Frooodle](https://github.com/Frooodle) in [#5664](https://github.com/Stirling-Tools/Stirling-PDF/pull/5664)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5669](https://github.com/Stirling-Tools/Stirling-PDF/pull/5669)
- SSO styling changes  by [@Frooodle](https://github.com/Frooodle) in [#5671](https://github.com/Stirling-Tools/Stirling-PDF/pull/5671)

##### Docker Updates

- build(deps): bump alpine from 3.23.2 to 3.23.3 in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5590](https://github.com/Stirling-Tools/Stirling-PDF/pull/5590)
- chore(ci): update GitHub Actions to latest stable versions by [@Ludy87](https://github.com/Ludy87) in [#5629](https://github.com/Stirling-Tools/Stirling-PDF/pull/5629)

##### Translation Changes

- chore(ci): improve language TOML check output with fixer guidance by [@Ludy87](https://github.com/Ludy87) in [#5638](https://github.com/Stirling-Tools/Stirling-PDF/pull/5638)
- chore(ci): refine pre-commit workflows, add TOML sorting by [@Ludy87](https://github.com/Ludy87) in [#5648](https://github.com/Stirling-Tools/Stirling-PDF/pull/5648)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5667](https://github.com/Stirling-Tools/Stirling-PDF/pull/5667)

##### Development Tools

- chore(vscode): replace deprecated Copilot extension with Copilot Chat by [@Ludy87](https://github.com/Ludy87) in [#5662](https://github.com/Stirling-Tools/Stirling-PDF/pull/5662)

##### Other Changes

- build(deps): bump io.swagger.core.v3:swagger-core-jakarta from 2.2.41 to 2.2.42 by [@dependabot](https://github.com/dependabot)\[bot] in [#5549](https://github.com/Stirling-Tools/Stirling-PDF/pull/5549)
- build(deps): bump org.postgresql:postgresql from 42.7.8 to 42.7.9 by [@dependabot](https://github.com/dependabot)\[bot] in [#5554](https://github.com/Stirling-Tools/Stirling-PDF/pull/5554)
- fix(build): define repositories to resolve test classpath dependencies by [@Ludy87](https://github.com/Ludy87) in [#5650](https://github.com/Stirling-Tools/Stirling-PDF/pull/5650)
- tauri comments by [@Frooodle](https://github.com/Frooodle) in [#5634](https://github.com/Stirling-Tools/Stirling-PDF/pull/5634)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.4...v2.4.5>

---
##### [\`2.4.4\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.4)

Quick fix for page editor bug causes multi-page selection issues

This release also contains

- Italian translations
- Bates stamping functionality to add page numbers
- Extract bookmarks API fix
- Diagnostics command in CLI for easy error reporting (grabs logs into a zip on request for you to view)

#### What's Changed

##### Enhancements

- feat(i18n): add missing compare placeholder and stamp label translations by [@Ludy87](https://github.com/Ludy87) in [#5636](https://github.com/Stirling-Tools/Stirling-PDF/pull/5636)

##### Minor Enhancements

- update to add optional Zero Padding to page numbers (Bates Stamping).… by [@mrober01](https://github.com/mrober01) in [#5612](https://github.com/Stirling-Tools/Stirling-PDF/pull/5612)
- Fix ClassCastException in extractBookmarks endpoint ([#5578](https://github.com/Stirling-Tools/Stirling-PDF/issues/5578)) by [@Eruis2579](https://github.com/Eruis2579) in [#5604](https://github.com/Stirling-Tools/Stirling-PDF/pull/5604)
- Bug/page editor additional fixes by [@reecebrowne](https://github.com/reecebrowne) in [#5660](https://github.com/Stirling-Tools/Stirling-PDF/pull/5660)
- Updated Italian translation by [@albanobattistella](https://github.com/albanobattistella) in [#5637](https://github.com/Stirling-Tools/Stirling-PDF/pull/5637)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5642](https://github.com/Stirling-Tools/Stirling-PDF/pull/5642)

##### Other Changes

- diagnostic script by [@Frooodle](https://github.com/Frooodle) in [#5646](https://github.com/Stirling-Tools/Stirling-PDF/pull/5646)

#### New Contributors

- [@mrober01](https://github.com/mrober01) made their first contribution in [#5612](https://github.com/Stirling-Tools/Stirling-PDF/pull/5612)
- [@Eruis2579](https://github.com/Eruis2579) made their first contribution in [#5604](https://github.com/Stirling-Tools/Stirling-PDF/pull/5604)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.3...v2.4.4>

---
##### [\`2.4.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.3)

Big desktop release today, full of fixes as well as other changes!

- Correctly show desktop and server versioning separately
- Support for watched folders to be recursive and multiple directories to be defined
- Desktop login expiry fix
- Desktop self-host connection improvements (self-sign fixes and others)
- Page editor performance and UI improvements
- frontend error screen appearing during SSO fix
- Desktop CORS fixes

#### What's Changed

##### Enhancements

- feat(settings): display frontend/backend versions and warn on client-server mismatch by [@Ludy87](https://github.com/Ludy87) in [#5571](https://github.com/Stirling-Tools/Stirling-PDF/pull/5571)
- Support multiple pipeline watch directories and configurable pipeline base path by [@Frooodle](https://github.com/Frooodle) in [#5545](https://github.com/Stirling-Tools/Stirling-PDF/pull/5545)

##### Minor Enhancements

- Stop type checking TypeScript files that won't be run by [@jbrunton96](https://github.com/jbrunton96) in [#5607](https://github.com/Stirling-Tools/Stirling-PDF/pull/5607)
- Fixed missing AuthnRequest bug by [@DarioGii](https://github.com/DarioGii) in [#5606](https://github.com/Stirling-Tools/Stirling-PDF/pull/5606)
- Update links to Docs by [@numanair](https://github.com/numanair) in [#5611](https://github.com/Stirling-Tools/Stirling-PDF/pull/5611)
- fix(frontend): prevent hydration errors in admin security form and improve autofill support by [@Ludy87](https://github.com/Ludy87) in [#5613](https://github.com/Stirling-Tools/Stirling-PDF/pull/5613)
- fix(auth): align token refresh handling with updated backend response by [@Ludy87](https://github.com/Ludy87) in [#5609](https://github.com/Stirling-Tools/Stirling-PDF/pull/5609)
- always allow tauri cors by [@Frooodle](https://github.com/Frooodle) in [#5616](https://github.com/Stirling-Tools/Stirling-PDF/pull/5616)
- Bug/pageeditor virtualisation by [@reecebrowne](https://github.com/reecebrowne) in [#5614](https://github.com/Stirling-Tools/Stirling-PDF/pull/5614)
- Stop attempting to refresh Spring tokens in desktop by [@Frooodle](https://github.com/Frooodle) in [#5610](https://github.com/Stirling-Tools/Stirling-PDF/pull/5610)

##### Other Changes

- Update Python dependencies in requirements files by [@Ludy87](https://github.com/Ludy87) in [#5627](https://github.com/Stirling-Tools/Stirling-PDF/pull/5627)
- Pin GitHub Actions and add runner hardening by [@Ludy87](https://github.com/Ludy87) in [#5628](https://github.com/Stirling-Tools/Stirling-PDF/pull/5628)

#### New Contributors

- [@numanair](https://github.com/numanair) made their first contribution in [#5611](https://github.com/Stirling-Tools/Stirling-PDF/pull/5611)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.2...v2.4.3>

---
##### [\`2.4.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.2)

This is a quick update including

- Fixes for Audit display failing under certain scenarios
- Fix for tools not being correctly disabled via disable-endpoints settings
- Text editor font rendering fixes
- New Variables for Stamp PDF feature!

#### What's Changed

##### Enhancements

- feat(stamp): add dynamic variables and templates for stamp text customization by [@balazs-szucs](https://github.com/balazs-szucs) in [#5546](https://github.com/Stirling-Tools/Stirling-PDF/pull/5546)

##### Minor Enhancements

- Fix tool disabling by [@Frooodle](https://github.com/Frooodle) in [#5585](https://github.com/Stirling-Tools/Stirling-PDF/pull/5585)
- Fix Audit & Usage Analytics Sections by [@DarioGii](https://github.com/DarioGii) in [#5586](https://github.com/Stirling-Tools/Stirling-PDF/pull/5586)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5538](https://github.com/Stirling-Tools/Stirling-PDF/pull/5538)

##### Other Changes

- fix: PDF Text Editor file open by [@bittoby](https://github.com/bittoby) in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

#### New Contributors

- [@bittoby](https://github.com/bittoby) made their first contribution in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.1...v2.4.2>

<!-- Release notes generated using configuration in .github/release.yml at v2.4.2 -->

#### What's Changed

##### Enhancements

- feat(stamp): add dynamic variables and templates for stamp text customization by [@balazs-szucs](https://github.com/balazs-szucs) in [#5546](https://github.com/Stirling-Tools/Stirling-PDF/pull/5546)

##### Minor Enhancements

- Fix tool disabling by [@Frooodle](https://github.com/Frooodle) in [#5585](https://github.com/Stirling-Tools/Stirling-PDF/pull/5585)
- Fix Audit & Usage Analytics Sections by [@DarioGii](https://github.com/DarioGii) in [#5586](https://github.com/Stirling-Tools/Stirling-PDF/pull/5586)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5538](https://github.com/Stirling-Tools/Stirling-PDF/pull/5538)

##### Other Changes

- fix: PDF Text Editor file open by [@bittoby](https://github.com/bittoby) in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

#### New Contributors

- [@bittoby](https://github.com/bittoby) made their first contribution in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.1...v2.4.2>

---
##### [\`2.4.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.1)

Lots of bug fixes today!
Fix for HTTPS connection for desktop mode
Xframe option now in settings.yml and options menu for iframe support
Various other bug fixes and dependencies updates!
Mac desktop not starting correctly

#### What's Changed

##### Enhancements

- deps(frontend, tauri): update Tauri, Rust crates, and frontend dependencies by [@Ludy87](https://github.com/Ludy87) in [#5569](https://github.com/Stirling-Tools/Stirling-PDF/pull/5569)

##### Minor Enhancements

- pipeline fixes for naming issues  by [@Frooodle](https://github.com/Frooodle) in [#5570](https://github.com/Stirling-Tools/Stirling-PDF/pull/5570)
- xframe fix new by [@Frooodle](https://github.com/Frooodle) in [#5580](https://github.com/Stirling-Tools/Stirling-PDF/pull/5580)
- tool tags by [@Frooodle](https://github.com/Frooodle) in [#5568](https://github.com/Stirling-Tools/Stirling-PDF/pull/5568)
- deps(embedPDF): Bump codebase to embedPDF v2.3.0 and adjust codebase for new features by [@balazs-szucs](https://github.com/balazs-szucs) in [#5567](https://github.com/Stirling-Tools/Stirling-PDF/pull/5567)
- possible login fixes by [@Frooodle](https://github.com/Frooodle) in [#5444](https://github.com/Stirling-Tools/Stirling-PDF/pull/5444)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5581](https://github.com/Stirling-Tools/Stirling-PDF/pull/5581)

##### Docker Updates

- chore(ci): remove automated version sync job from build workflow by [@Ludy87](https://github.com/Ludy87) in [#5547](https://github.com/Stirling-Tools/Stirling-PDF/pull/5547)

##### Other Changes

- build(deps): bump pypdf from 6.6.0 to 6.6.2 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5577](https://github.com/Stirling-Tools/Stirling-PDF/pull/5577)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.0...v2.4.1>

---
##### [\`2.4.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.0)

Lots of new features in this release

- database backup management (Only for internal H2 database users)
- Full 2FA support with One-time-password auth code app support!
- Get info supporting better compliance verification
- PDF/X conversions
- automation tool now export into folder scan JSONs for folder automation

Bug fixes for

- Sign tool
- SSO user creation
- addStamp not handling timestamps

Thanks as always for all the fixes and work everyone has been doing! such as [@balazs-szucs](https://github.com/balazs-szucs) or the new bug fix from [@Joey4](https://github.com/Joey4) !
Special thanks to [@Ludy87](https://github.com/Ludy87) for introducing the awesome 2FA feature!

#### What's Changed

##### Enhancements

- feat(admin): add H2 database backup & restore management to admin UI by [@Ludy87](https://github.com/Ludy87) in [#5528](https://github.com/Stirling-Tools/Stirling-PDF/pull/5528)
- feat(frontend): enhance icon detection and update config navigation icon by [@Ludy87](https://github.com/Ludy87) in [#5524](https://github.com/Stirling-Tools/Stirling-PDF/pull/5524)
- feat(security): add TOTP-based multi-factor authentication with backend and UI support by [@Ludy87](https://github.com/Ludy87) in [#5417](https://github.com/Stirling-Tools/Stirling-PDF/pull/5417)
- feat(compliance): implement compliance verfication for get info on PDF by [@balazs-szucs](https://github.com/balazs-szucs) in [#5435](https://github.com/Stirling-Tools/Stirling-PDF/pull/5435)

##### Minor Enhancements

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5530](https://github.com/Stirling-Tools/Stirling-PDF/pull/5530)
- fix(annotations): fix error 300 on sign frontend by [@balazs-szucs](https://github.com/balazs-szucs) in [#5536](https://github.com/Stirling-Tools/Stirling-PDF/pull/5536)
- Fix: Whitelist health endpoints in Security and Enterprise Filter + fix keep original commit by [@Frooodle](https://github.com/Frooodle) in [#5494](https://github.com/Stirling-Tools/Stirling-PDF/pull/5494)
- API cleanups by [@Frooodle](https://github.com/Frooodle) in [#5537](https://github.com/Stirling-Tools/Stirling-PDF/pull/5537)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5490](https://github.com/Stirling-Tools/Stirling-PDF/pull/5490)
- refactor(security): clean up SSO handling, harden URL parsing, and bump dependencies by [@Ludy87](https://github.com/Ludy87) in [#5523](https://github.com/Stirling-Tools/Stirling-PDF/pull/5523)
- fix(common): 🛡️CWE-681 & CWE-197 eliminate tainted numeric casts in size parsing by using BigDecimal with range guards by [@Ludy87](https://github.com/Ludy87) in [#5521](https://github.com/Stirling-Tools/Stirling-PDF/pull/5521)
- build(deps): bump nginx from `c083c37` to `b0f7830` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5500](https://github.com/Stirling-Tools/Stirling-PDF/pull/5500)
- build(deps): bump node from `f4769ca` to `e80397b` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5498](https://github.com/Stirling-Tools/Stirling-PDF/pull/5498)
- Fix V2 SSO user creation by [@Frooodle](https://github.com/Frooodle) in [#5079](https://github.com/Stirling-Tools/Stirling-PDF/pull/5079)
- removal of old java desktop + workspace change in tauri by [@Frooodle](https://github.com/Frooodle) in [#5459](https://github.com/Stirling-Tools/Stirling-PDF/pull/5459)
- Date and time placeholders in addTextStamp are not working by [@Joey4](https://github.com/Joey4) in [#5446](https://github.com/Stirling-Tools/Stirling-PDF/pull/5446)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5539](https://github.com/Stirling-Tools/Stirling-PDF/pull/5539)
- \[V2] feat(convert): add PDF/X export option by [@balazs-szucs](https://github.com/balazs-szucs) in [#5285](https://github.com/Stirling-Tools/Stirling-PDF/pull/5285)
- V2 Show enterprise demo messages for audit and usage by [@Frooodle](https://github.com/Frooodle) in [#5226](https://github.com/Stirling-Tools/Stirling-PDF/pull/5226)
- Export folder scanning by [@Frooodle](https://github.com/Frooodle) in [#5544](https://github.com/Stirling-Tools/Stirling-PDF/pull/5544)
- translations by [@Frooodle](https://github.com/Frooodle) in [#5541](https://github.com/Stirling-Tools/Stirling-PDF/pull/5541)

##### Docker Updates

- Add sync-versions job to GitHub Actions workflow by [@Ludy87](https://github.com/Ludy87) in [#5228](https://github.com/Stirling-Tools/Stirling-PDF/pull/5228)
- build(deps): bump debian from `f668110` to `ed542b2` in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5495](https://github.com/Stirling-Tools/Stirling-PDF/pull/5495)

##### Other Changes

- build(deps): bump logback from 1.5.23 to 1.5.24 by [@dependabot](https://github.com/dependabot)\[bot] in [#5468](https://github.com/Stirling-Tools/Stirling-PDF/pull/5468)
- build(deps): bump io.micrometer:micrometer-core from 1.16.1 to 1.16.2 by [@dependabot](https://github.com/dependabot)\[bot] in [#5466](https://github.com/Stirling-Tools/Stirling-PDF/pull/5466)

#### New Contributors

- [@Joey4](https://github.com/Joey4) made their first contribution in [#5446](https://github.com/Stirling-Tools/Stirling-PDF/pull/5446)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.3.1...v2.4.0>

---
##### [\`2.3.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.3.1)

Several bug fixes , including

- Scroll bar not showing correctly in settings menu
- Automate menus showing options correctly

and several other change,s such as SVG to PDF conversion and performance changes throughout app

#### What's Changed

##### Enhancements

- feat(conversion): add SVG to PDF conversion functionality by [@balazs-szucs](https://github.com/balazs-szucs) in [#5431](https://github.com/Stirling-Tools/Stirling-PDF/pull/5431)
- feat(pipeline): improve file processing with resource management and temp file handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5488](https://github.com/Stirling-Tools/Stirling-PDF/pull/5488)
- feat(admin): add tessdata language management for OCR and download support by [@Ludy87](https://github.com/Ludy87) in [#5519](https://github.com/Stirling-Tools/Stirling-PDF/pull/5519)

##### Minor Enhancements

- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5489](https://github.com/Stirling-Tools/Stirling-PDF/pull/5489)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5484](https://github.com/Stirling-Tools/Stirling-PDF/pull/5484)
- \[V2] fix(automation): enhance parameter handling and default values across operations, fix error in ManyToOne tools by [@balazs-szucs](https://github.com/balazs-szucs) in [#5123](https://github.com/Stirling-Tools/Stirling-PDF/pull/5123)
- scrollbar fixes by [@Frooodle](https://github.com/Frooodle) in [#5529](https://github.com/Stirling-Tools/Stirling-PDF/pull/5529)
- Fix hook ordering for endpoint name resolution by [@Frooodle](https://github.com/Frooodle) in [#5517](https://github.com/Stirling-Tools/Stirling-PDF/pull/5517)
- fix(automation): add zIndex and withinPortal props to dropdown components for improved UI consistency by [@balazs-szucs](https://github.com/balazs-szucs) in [#5527](https://github.com/Stirling-Tools/Stirling-PDF/pull/5527)
- refactor: remove legacy Thymeleaf web UI controllers and templates by [@Ludy87](https://github.com/Ludy87) in [#5406](https://github.com/Stirling-Tools/Stirling-PDF/pull/5406)
- fix(pipeline): avoid bad multipart by letting RestTemplate set boundary by [@Ludy87](https://github.com/Ludy87) in [#5522](https://github.com/Stirling-Tools/Stirling-PDF/pull/5522)
- chore(i18n): update and expand Dutch (nl-NL) translations by [@Stephan-P](https://github.com/Stephan-P) in [#5355](https://github.com/Stirling-Tools/Stirling-PDF/pull/5355)
- Update Italian translations by [@albanobattistella](https://github.com/albanobattistella) in [#5508](https://github.com/Stirling-Tools/Stirling-PDF/pull/5508)

##### Docker Updates

- chore(ci): enable Gradle dependency caching across GitHub workflows by [@Ludy87](https://github.com/Ludy87) in [#5400](https://github.com/Stirling-Tools/Stirling-PDF/pull/5400)
- build(deps): bump actions/checkout from 4.2.2 to 6.0.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5465](https://github.com/Stirling-Tools/Stirling-PDF/pull/5465)

##### Development Tools

- build(deps-dev): bump stylelint-config-standard from 39.0.1 to 40.0.0 in /devTools by [@dependabot](https://github.com/dependabot)\[bot] in [#5504](https://github.com/Stirling-Tools/Stirling-PDF/pull/5504)

##### Other Changes

- build(deps): bump actions/download-artifact from 6.0.0 to 7.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5503](https://github.com/Stirling-Tools/Stirling-PDF/pull/5503)
- build(deps): bump reportlab from 4.4.5 to 4.4.9 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5505](https://github.com/Stirling-Tools/Stirling-PDF/pull/5505)

---
##### [\`2.3.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.3.0)

Several important bug fixes in this release related to

- File conversion threading
- Non-roman alphabet files processing incorrectly
- Desktop app bugs (Lots more fixes coming!)
- And many others!

We also have some really cool features introduced such as

- Telegram bot (In Connections menu or settings.yml)
- PDF to EPUB and AZW3
- MSG support

#### What's Changed

##### Enhancements

- feat(build): enhance JaCoCo reporting with coverage summary and enforce thresholds by [@Ludy87](https://github.com/Ludy87) in [#5352](https://github.com/Stirling-Tools/Stirling-PDF/pull/5352)
- feat(ui): prevent self-modification in People management and highlight current user by [@Ludy87](https://github.com/Ludy87) in [#5441](https://github.com/Stirling-Tools/Stirling-PDF/pull/5441)
- feat(conversion): refactor EML parser to use Simple Java Mail library and add MSG support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5427](https://github.com/Stirling-Tools/Stirling-PDF/pull/5427)
- feat(conversion): add PDF to EPUB/AZW3 conversion support and settings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5434](https://github.com/Stirling-Tools/Stirling-PDF/pull/5434)

##### Minor Enhancements

- build(ci): pin base container images, switch npm install to npm ci, and harden EML error handling by [@Ludy87](https://github.com/Ludy87) in [#5353](https://github.com/Stirling-Tools/Stirling-PDF/pull/5353)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5426](https://github.com/Stirling-Tools/Stirling-PDF/pull/5426)
- Updated ga-IE translations and added keys to ignore list by [@aindriu80](https://github.com/aindriu80) in [#5178](https://github.com/Stirling-Tools/Stirling-PDF/pull/5178)
- fix(api): return JSON responses for admin settings + API key endpoints to prevent Tauri client parse errors by [@Ludy87](https://github.com/Ludy87) in [#5437](https://github.com/Stirling-Tools/Stirling-PDF/pull/5437)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5363](https://github.com/Stirling-Tools/Stirling-PDF/pull/5363)
- build(deps): bump node from 20-alpine to 25-alpine in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5311](https://github.com/Stirling-Tools/Stirling-PDF/pull/5311)
- build(deps): bump nginx from `8491795` to `c083c37` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5448](https://github.com/Stirling-Tools/Stirling-PDF/pull/5448)
- build(deps): bump globals from 16.5.0 to 17.0.0 in /frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5413](https://github.com/Stirling-Tools/Stirling-PDF/pull/5413)
- Add Telegram bot integration for pipeline processing by [@Ludy87](https://github.com/Ludy87) in [#5185](https://github.com/Stirling-Tools/Stirling-PDF/pull/5185)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5458](https://github.com/Stirling-Tools/Stirling-PDF/pull/5458)
- translations by [@Frooodle](https://github.com/Frooodle) in [#5469](https://github.com/Stirling-Tools/Stirling-PDF/pull/5469)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5473](https://github.com/Stirling-Tools/Stirling-PDF/pull/5473)
- fix(auth): remove unnecessary authentication requirement from SignatureController by [@balazs-szucs](https://github.com/balazs-szucs) in [#5477](https://github.com/Stirling-Tools/Stirling-PDF/pull/5477)
- Make controls sticky by [@reecebrowne](https://github.com/reecebrowne) in [#5478](https://github.com/Stirling-Tools/Stirling-PDF/pull/5478)
- fix: update broken enterprise docs link from /Pro to /Paid-Offerings by [@krizhnaa](https://github.com/krizhnaa) in [#5471](https://github.com/Stirling-Tools/Stirling-PDF/pull/5471)
- Libre threads by [@Frooodle](https://github.com/Frooodle) in [#5303](https://github.com/Stirling-Tools/Stirling-PDF/pull/5303)

##### Docker Updates

- build(deps): bump docker/setup-qemu-action from 3.6.0 to 3.7.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5326](https://github.com/Stirling-Tools/Stirling-PDF/pull/5326)
- build(deps): bump step-security/harden-runner from 2.12.1 to 2.14.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5324](https://github.com/Stirling-Tools/Stirling-PDF/pull/5324)
- ci(build): scope Docker layer cache per artifact to avoid cross-contamination by [@Ludy87](https://github.com/Ludy87) in [#5453](https://github.com/Stirling-Tools/Stirling-PDF/pull/5453)
- build(deps): bump alpine from 3.22.2 to 3.23.2 in /docker/backend by [@dependabot](https://github.com/dependabot)\[bot] in [#5316](https://github.com/Stirling-Tools/Stirling-PDF/pull/5316)
- build(deps): bump alpine from 3.22.1 to 3.23.2 in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5319](https://github.com/Stirling-Tools/Stirling-PDF/pull/5319)
- build(deps): bump debian from `1c25564` to `449673e` in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5357](https://github.com/Stirling-Tools/Stirling-PDF/pull/5357)
- build(deps): bump docker/setup-buildx-action from 3.11.1 to 3.12.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5463](https://github.com/Stirling-Tools/Stirling-PDF/pull/5463)
- Docker use latest libreoffice and fonts by [@Frooodle](https://github.com/Frooodle) in [#5482](https://github.com/Stirling-Tools/Stirling-PDF/pull/5482)

##### Translation Changes

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5462](https://github.com/Stirling-Tools/Stirling-PDF/pull/5462)

##### Other Changes

- fix(ci): read workflow\_dispatch PR number from inputs.pr in PR auto-deploy workflow by [@Ludy87](https://github.com/Ludy87) in [#5380](https://github.com/Stirling-Tools/Stirling-PDF/pull/5380)
- build(deps): bump github/codeql-action from 4.31.5 to 4.31.10 by [@dependabot](https://github.com/dependabot)\[bot] in [#5449](https://github.com/Stirling-Tools/Stirling-PDF/pull/5449)
- build(deps): bump pypdf from 6.4.0 to 6.6.0 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5422](https://github.com/Stirling-Tools/Stirling-PDF/pull/5422)
- build(deps): bump io.micrometer:micrometer-core from 1.16.0 to 1.16.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5358](https://github.com/Stirling-Tools/Stirling-PDF/pull/5358)
- Update user login conditions in workflow by [@Frooodle](https://github.com/Frooodle) in [#5457](https://github.com/Stirling-Tools/Stirling-PDF/pull/5457)
- fix(core): reinstall frontend dependencies when iconify package is missing by [@Ludy87](https://github.com/Ludy87) in [#5432](https://github.com/Stirling-Tools/Stirling-PDF/pull/5432)
- fix(translations): improve translation merger CLI and sync missing UI strings across locales by [@Ludy87](https://github.com/Ludy87) in [#5309](https://github.com/Stirling-Tools/Stirling-PDF/pull/5309)
- build(deps): bump urllib3 from 2.5.0 to 2.6.3 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5456](https://github.com/Stirling-Tools/Stirling-PDF/pull/5456)
- build(deps): bump docker/login-action from 3.4.0 to 3.6.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5464](https://github.com/Stirling-Tools/Stirling-PDF/pull/5464)

#### New Contributors

- [@krizhnaa](https://github.com/krizhnaa) made their first contribution in [#5471](https://github.com/Stirling-Tools/Stirling-PDF/pull/5471)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.2.1...v2.3.0>

<!-- Release notes generated using configuration in .github/release.yml at v2.3.0 -->

#### What's Changed

##### Enhancements

- feat(build): enhance JaCoCo reporting with coverage summary and enforce thresholds by [@Ludy87](https://github.com/Ludy87) in [#5352](https://github.com/Stirling-Tools/Stirling-PD…
renovate bot added a commit to sdwilsh/ansible-playbooks that referenced this pull request Mar 19, 2026
… docker tag to v2

##### [\`2.7.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.3)

- New PDF read aloud feature in viewer mode to "speak" the PDF to you, will be improved more going forwards!
- Improved annotation handling in annotation UI
- Mac printing is finally working on desktop app!
- Several general bug fixes such as Fix non-ASCII characters in headers being rejected
- Fix bug for HTTP2 support

In this release, we have also removed the remove-image tool temporarily, along with some changes to folder watching. If you use these, we recommend holding off on this release till our 2.8.0 release, planned for release in the next few days

##### What's Changed

##### Enhancements

- feat(http2): add jetty-alpn-java-server dependency for HTTP/2 support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5945](https://github.com/Stirling-Tools/Stirling-PDF/pull/5945)

##### Minor Enhancements

- Improve annotations by [@EthanHealy01](https://github.com/EthanHealy01) in [#5919](https://github.com/Stirling-Tools/Stirling-PDF/pull/5919)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5798](https://github.com/Stirling-Tools/Stirling-PDF/pull/5798)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5930](https://github.com/Stirling-Tools/Stirling-PDF/pull/5930)
- Fix printing on Mac desktop by [@jbrunton96](https://github.com/jbrunton96) in [#5920](https://github.com/Stirling-Tools/Stirling-PDF/pull/5920)
- Delete code from invalid license by [@Frooodle](https://github.com/Frooodle) in [#5947](https://github.com/Stirling-Tools/Stirling-PDF/pull/5947)
- fix jumping cursor bug by [@rafaroseira](https://github.com/rafaroseira) in [#5937](https://github.com/Stirling-Tools/Stirling-PDF/pull/5937)
- Fix `any` type usage in the `saas/` folder by [@jbrunton96](https://github.com/jbrunton96) in [#5934](https://github.com/Stirling-Tools/Stirling-PDF/pull/5934)
- Unify creditCosts.ts files by [@jbrunton96](https://github.com/jbrunton96) in [#5952](https://github.com/Stirling-Tools/Stirling-PDF/pull/5952)
- Hotfix-cant-run-tools-when-no-credits by [@ConnorYoh](https://github.com/ConnorYoh) in [#5955](https://github.com/Stirling-Tools/Stirling-PDF/pull/5955)
- Fix non-ASCII characters in headers being rejected ([#5377](https://github.com/Stirling-Tools/Stirling-PDF/issues/5377)) by [@Eruis2579](https://github.com/Eruis2579) in [#5699](https://github.com/Stirling-Tools/Stirling-PDF/pull/5699)
- speaking! by [@Frooodle](https://github.com/Frooodle) in [#5925](https://github.com/Stirling-Tools/Stirling-PDF/pull/5925)

##### Docker Updates

- build(deps): bump step-security/harden-runner from 2.14.0 to 2.15.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5896](https://github.com/Stirling-Tools/Stirling-PDF/pull/5896)
- build(deps): bump crazy-max/ghaction-github-runtime from 3.1.0 to 4.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5890](https://github.com/Stirling-Tools/Stirling-PDF/pull/5890)
- build(deps): bump docker/metadata-action from 5.10.0 to 6.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5889](https://github.com/Stirling-Tools/Stirling-PDF/pull/5889)
- build(deps): bump actions/setup-python from 6.1.0 to 6.2.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5886](https://github.com/Stirling-Tools/Stirling-PDF/pull/5886)
- build(deps): bump actions/cache from 4.3.0 to 5.0.3 by [@dependabot](https://github.com/dependabot)\[bot] in [#5940](https://github.com/Stirling-Tools/Stirling-PDF/pull/5940)
- build(deps): bump dorny/paths-filter from 3.0.2 to 4.0.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5943](https://github.com/Stirling-Tools/Stirling-PDF/pull/5943)
- build(deps): bump actions/upload-artifact from 6.0.0 to 7.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5939](https://github.com/Stirling-Tools/Stirling-PDF/pull/5939)
- Fix Docker builds on Debian by [@unlair](https://github.com/unlair) in [#5936](https://github.com/Stirling-Tools/Stirling-PDF/pull/5936)

##### Other Changes

- build(deps): bump actions/download-artifact from 7.0.0 to 8.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5887](https://github.com/Stirling-Tools/Stirling-PDF/pull/5887)
- Add SaaS AI engine by [@jbrunton96](https://github.com/jbrunton96) in [#5907](https://github.com/Stirling-Tools/Stirling-PDF/pull/5907)
- build(deps): bump srvaroa/labeler from 1.13.0 to 1.14.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5942](https://github.com/Stirling-Tools/Stirling-PDF/pull/5942)
- build(deps): bump github/codeql-action from 4.32.4 to 4.32.6 by [@dependabot](https://github.com/dependabot)\[bot] in [#5941](https://github.com/Stirling-Tools/Stirling-PDF/pull/5941)

##### New Contributors

- [@rafaroseira](https://github.com/rafaroseira) made their first contribution in [#5937](https://github.com/Stirling-Tools/Stirling-PDF/pull/5937)
- [@unlair](https://github.com/unlair) made their first contribution in [#5936](https://github.com/Stirling-Tools/Stirling-PDF/pull/5936)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.7.2...v2.7.3>

---
##### [\`2.7.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.2)

Had a bug where self-hosted connections via desktop would stop working, thinking they were connecting to a non selfhost instance

#### What's Changed

##### Minor Enhancements

- Check if saas before blocking credit insufficiencies by [@ConnorYoh](https://github.com/ConnorYoh) in [#5929](https://github.com/Stirling-Tools/Stirling-PDF/pull/5929)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.7.1...v2.7.2>

<!-- Release notes generated using configuration in .github/release.yml at v2.7.2 -->

#### What's Changed

##### Minor Enhancements

- Check if saas before blocking credit insufficiencies by [@ConnorYoh](https://github.com/ConnorYoh) in [#5929](https://github.com/Stirling-Tools/Stirling-PDF/pull/5929)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.7.1...v2.7.2>

---
##### [\`2.7.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.1)

Bug fixes for various issues such as:

- Desktop conversions mistakenly doing a 'save' to 'save as'
- Desktop 'open with PDF' having invalid description on windows
- Posthog still creating a cookie even when its not used (still a  fully unused cookie tho)
- Desktop not falling back to local connection if on selfhosted and server down
- Rotate on large docs not always working correctly

#### What's Changed

##### Minor Enhancements

- Chore/v2/transforms as root by [@reecebrowne](https://github.com/reecebrowne) in [#5868](https://github.com/Stirling-Tools/Stirling-PDF/pull/5868)
- Limit PostHog cookie to Stirling PDF's subdomain only by [@bban160](https://github.com/bban160) in [#5882](https://github.com/Stirling-Tools/Stirling-PDF/pull/5882)
- Posthog-fixes by [@ConnorYoh](https://github.com/ConnorYoh) in [#5901](https://github.com/Stirling-Tools/Stirling-PDF/pull/5901)
- Get rid of bad description for file association on Windows by [@jbrunton96](https://github.com/jbrunton96) in [#5905](https://github.com/Stirling-Tools/Stirling-PDF/pull/5905)
- Desktop: Fallback to local backend if self-hosted server is offline by [@ConnorYoh](https://github.com/ConnorYoh) in [#5880](https://github.com/Stirling-Tools/Stirling-PDF/pull/5880)
- Add SaaS frontend code by [@jbrunton96](https://github.com/jbrunton96) in [#5879](https://github.com/Stirling-Tools/Stirling-PDF/pull/5879)
- Manage state of price-lookup calls by [@ConnorYoh](https://github.com/ConnorYoh) in [#5915](https://github.com/Stirling-Tools/Stirling-PDF/pull/5915)
- Add system for managing env vars by [@jbrunton96](https://github.com/jbrunton96) in [#5902](https://github.com/Stirling-Tools/Stirling-PDF/pull/5902)
- Fix rotate failing on large documents by [@reecebrowne](https://github.com/reecebrowne) in [#5917](https://github.com/Stirling-Tools/Stirling-PDF/pull/5917)
- Cleanup-conversion-translations by [@ConnorYoh](https://github.com/ConnorYoh) in [#5906](https://github.com/Stirling-Tools/Stirling-PDF/pull/5906)
- Update Italian translations by [@albanobattistella](https://github.com/albanobattistella) in [#5884](https://github.com/Stirling-Tools/Stirling-PDF/pull/5884)

##### Development Tools

- Move AI advice to AGENTS.md and add symlink from CLAUDE.md by [@jbrunton96](https://github.com/jbrunton96) in [#5914](https://github.com/Stirling-Tools/Stirling-PDF/pull/5914)

#### New Contributors

- [@bban160](https://github.com/bban160) made their first contribution in [#5882](https://github.com/Stirling-Tools/Stirling-PDF/pull/5882)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.7.0...v2.7.1>

---
##### [\`2.7.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.0)

Lots of changes in this release yet again!

App:

- option to hide google drive and mobile upload when disabled in 'my files' view
- New search bar to search settings menu easily
- Auditing has improved, new filehash/author options are supported with better reporting overall (We recommend enterprise users to backup their Stirling database before updating to be safe, although expect no issues)

Desktop:

- Desktop app correctly returns to its previous window state and location as its previous launch
- Desktop app supports OS notifications if it finishes working on tasks whilst minimised

Bugs fixed:

- Pipeline erroring in merge tool and others based on parameters
- Certification signature stamps not showing correctly in the viewer
- English was being enabled even when it was disabled in settings

#### What's Changed

##### Enhancements

- settings menu reworks by [@Frooodle](https://github.com/Frooodle) in [#5864](https://github.com/Stirling-Tools/Stirling-PDF/pull/5864)

##### Minor Enhancements

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5775](https://github.com/Stirling-Tools/Stirling-PDF/pull/5775)
- Persist Tauri window state between launches by [@Frooodle](https://github.com/Frooodle) in [#5871](https://github.com/Stirling-Tools/Stirling-PDF/pull/5871)
- tauri notifications by [@Frooodle](https://github.com/Frooodle) in [#5875](https://github.com/Stirling-Tools/Stirling-PDF/pull/5875)
- Audit fixes and improvements by [@Frooodle](https://github.com/Frooodle) in [#5835](https://github.com/Stirling-Tools/Stirling-PDF/pull/5835)
- fix: merge pdf pipeline validation by [@RenzoMXD](https://github.com/RenzoMXD) in [#5799](https://github.com/Stirling-Tools/Stirling-PDF/pull/5799)
- Fix signatures not showing by [@ConnorYoh](https://github.com/ConnorYoh) in [#5872](https://github.com/Stirling-Tools/Stirling-PDF/pull/5872)
- Add the production billing portal link for static plan page by [@ConnorYoh](https://github.com/ConnorYoh) in [#5860](https://github.com/Stirling-Tools/Stirling-PDF/pull/5860)
- option to hide google drive and add settings by [@Frooodle](https://github.com/Frooodle) in [#5863](https://github.com/Stirling-Tools/Stirling-PDF/pull/5863)
- stop enabling english by [@Frooodle](https://github.com/Frooodle) in [#5874](https://github.com/Stirling-Tools/Stirling-PDF/pull/5874)
- Add searchable settings selector to AppConfigModal and improve nav behavior by [@Frooodle](https://github.com/Frooodle) in [#5873](https://github.com/Stirling-Tools/Stirling-PDF/pull/5873)

##### Docker Updates

- build(deps): bump actions/setup-node from 4.4.0 to 6.2.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5691](https://github.com/Stirling-Tools/Stirling-PDF/pull/5691)

##### Other Changes

- Don't build mac if you don't have the secrets by [@ConnorYoh](https://github.com/ConnorYoh) in [#5861](https://github.com/Stirling-Tools/Stirling-PDF/pull/5861)
- build(deps): bump digicert/ssm-code-signing from 1.2.0 to 1.2.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5692](https://github.com/Stirling-Tools/Stirling-PDF/pull/5692)
- build(deps): bump pypdf from 6.7.4 to 6.7.5 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5853](https://github.com/Stirling-Tools/Stirling-PDF/pull/5853)
- translations and version bump by [@Frooodle](https://github.com/Frooodle) in [#5878](https://github.com/Stirling-Tools/Stirling-PDF/pull/5878)

#### New Contributors

- [@RenzoMXD](https://github.com/RenzoMXD) made their first contribution in [#5799](https://github.com/Stirling-Tools/Stirling-PDF/pull/5799)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.6.0...v2.7.0>

---
##### [\`2.6.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.6.0)

In this update, we have drastically improved Stirling PDFs memory usage and startup performance in our testing you should see around a 30% reduction in both idle usage and startup speed
We have also dramatically reduced the filesize of the docker by 30-40%

Breaking updates:
No longer supporting JDK 17, we have moved to JDK 21-25 and are recommending all jar installs to upgrade to JDK 25 for best performance

Other updates

- Desktop now supports running non installed tools by optionally connecting to Stirling cloud server IF a user chooses to and is already running via login to cloud
- Several dependencies have been updated
- Security patches

Bug fixes

- Health check failing under certain auth scenarios
- Crop not working for desktop

#### What's Changed

##### Enhancements

- feat(docker): update base images to Java 25, Spring 4, Jackson 3, Gradle 9 and optimize JVM options (Project Lilliput) by [@balazs-szucs](https://github.com/balazs-szucs) in [#5725](https://github.com/Stirling-Tools/Stirling-PDF/pull/5725)
- feat(annotation): add moveAnnotation API for efficient repositioning of annotations, and bump embed to 2.7.0 by [@balazs-szucs](https://github.com/balazs-szucs) in [#5809](https://github.com/Stirling-Tools/Stirling-PDF/pull/5809)
- feat(conversion): switch PDF input engine to pdftohtml for improved performance and reduced dependencies by [@balazs-szucs](https://github.com/balazs-szucs) in [#5820](https://github.com/Stirling-Tools/Stirling-PDF/pull/5820)
- feat(aot): add aot-diagnostics.sh for AOT cache diagnostics and validation by [@balazs-szucs](https://github.com/balazs-szucs) in [#5848](https://github.com/Stirling-Tools/Stirling-PDF/pull/5848)

##### Minor Enhancements

- Update frontend minor package versions by [@jbrunton96](https://github.com/jbrunton96) in [#5787](https://github.com/Stirling-Tools/Stirling-PDF/pull/5787)
- Sync up Tauri versions by [@jbrunton96](https://github.com/jbrunton96) in [#5789](https://github.com/Stirling-Tools/Stirling-PDF/pull/5789)
- zip and response issues by [@Frooodle](https://github.com/Frooodle) in [#5786](https://github.com/Stirling-Tools/Stirling-PDF/pull/5786)
- Change to use dpdm for circular import scanning by [@jbrunton96](https://github.com/jbrunton96) in [#5788](https://github.com/Stirling-Tools/Stirling-PDF/pull/5788)
- Cachefixing test by [@Frooodle](https://github.com/Frooodle) in [#5793](https://github.com/Stirling-Tools/Stirling-PDF/pull/5793)
- Desktop connection SaaS: config, billing, team support by [@ConnorYoh](https://github.com/ConnorYoh) in [#5768](https://github.com/Stirling-Tools/Stirling-PDF/pull/5768)
- Switch to use ESLint 10 by [@jbrunton96](https://github.com/jbrunton96) in [#5794](https://github.com/Stirling-Tools/Stirling-PDF/pull/5794)
- cleanups by [@Frooodle](https://github.com/Frooodle) in [#5795](https://github.com/Stirling-Tools/Stirling-PDF/pull/5795)
- DocumentBuilderFactory limiting by [@Frooodle](https://github.com/Frooodle) in [#5797](https://github.com/Stirling-Tools/Stirling-PDF/pull/5797)
- lint by [@reecebrowne](https://github.com/reecebrowne) in [#5802](https://github.com/Stirling-Tools/Stirling-PDF/pull/5802)
- Harden shared signature endpoints  by [@Frooodle](https://github.com/Frooodle) in [#5806](https://github.com/Stirling-Tools/Stirling-PDF/pull/5806)
- open-saml bumps by [@Frooodle](https://github.com/Frooodle) in [#5805](https://github.com/Stirling-Tools/Stirling-PDF/pull/5805)
- fix split cuased by defaultParameters breaking dynamic endpoint tools by [@Frooodle](https://github.com/Frooodle) in [#5838](https://github.com/Stirling-Tools/Stirling-PDF/pull/5838)
- hardening by [@Frooodle](https://github.com/Frooodle) in [#5807](https://github.com/Stirling-Tools/Stirling-PDF/pull/5807)
- Fix health status checks falling under mettric flag by [@Frooodle](https://github.com/Frooodle) in [#5821](https://github.com/Stirling-Tools/Stirling-PDF/pull/5821)
- Frontend and Desktop audit fixes by [@ConnorYoh](https://github.com/ConnorYoh) in [#5840](https://github.com/Stirling-Tools/Stirling-PDF/pull/5840)
- refactor(merge,split,json): adopt streaming approach and standardize types, address gradle warnings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5803](https://github.com/Stirling-Tools/Stirling-PDF/pull/5803)
- fallback for /api/v1/config/endpoints-availability by [@ConnorYoh](https://github.com/ConnorYoh) in [#5842](https://github.com/Stirling-Tools/Stirling-PDF/pull/5842)
- Add check for ghostscript before plowing on with removeDataOutsideCrop by [@ConnorYoh](https://github.com/ConnorYoh) in [#5845](https://github.com/Stirling-Tools/Stirling-PDF/pull/5845)
- Fix split tooltips by [@reecebrowne](https://github.com/reecebrowne) in [#5847](https://github.com/Stirling-Tools/Stirling-PDF/pull/5847)

##### Docker Updates

- disable other dockers by [@Frooodle](https://github.com/Frooodle) in [#5792](https://github.com/Stirling-Tools/Stirling-PDF/pull/5792)
- docker cache fix by [@Frooodle](https://github.com/Frooodle) in [#5801](https://github.com/Stirling-Tools/Stirling-PDF/pull/5801)
- \[Aikido] AI Fix for 3rd party Github Actions should be pinned by [@aikido-autofix](https://github.com/aikido-autofix)\[bot] in [#5817](https://github.com/Stirling-Tools/Stirling-PDF/pull/5817)
- fix(aot): use Spring Boot exploded layer format for aot cache by [@balazs-szucs](https://github.com/balazs-szucs) in [#5811](https://github.com/Stirling-Tools/Stirling-PDF/pull/5811)
- \[StepSecurity] Apply security best practices by [@step-security-bot](https://github.com/step-security-bot) in [#5830](https://github.com/Stirling-Tools/Stirling-PDF/pull/5830)
- tauri jdk25 and docs by [@Frooodle](https://github.com/Frooodle) in [#5814](https://github.com/Stirling-Tools/Stirling-PDF/pull/5814)

##### Development Tools

- build(deps): bump ajv from 8.17.1 to 8.18.0 in /devTools in the npm\_and\_yarn group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5774](https://github.com/Stirling-Tools/Stirling-PDF/pull/5774)
- build(deps-dev): bump stylelint from 16.26.1 to 17.4.0 in /devTools by [@dependabot](https://github.com/dependabot)\[bot] in [#5822](https://github.com/Stirling-Tools/Stirling-PDF/pull/5822)

##### Other Changes

- build(deps-dev): bump pillow from 12.1.0 to 12.1.1 in /.github/scripts in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5720](https://github.com/Stirling-Tools/Stirling-PDF/pull/5720)
- build(deps): bump pillow from 12.1.0 to 12.1.1 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5719](https://github.com/Stirling-Tools/Stirling-PDF/pull/5719)
- deps by [@Frooodle](https://github.com/Frooodle) in [#5796](https://github.com/Stirling-Tools/Stirling-PDF/pull/5796)
- chore(deps): update dependencies for security by [@balazs-szucs](https://github.com/balazs-szucs) in [#5813](https://github.com/Stirling-Tools/Stirling-PDF/pull/5813)
- ci: provide default desktop env vars in tauri GitHub Actions builds by [@Frooodle](https://github.com/Frooodle) in [#5815](https://github.com/Stirling-Tools/Stirling-PDF/pull/5815)
- skip certs by [@Frooodle](https://github.com/Frooodle) in [#5819](https://github.com/Stirling-Tools/Stirling-PDF/pull/5819)
- build(deps): bump pypdf from 6.6.2 to 6.7.4 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5825](https://github.com/Stirling-Tools/Stirling-PDF/pull/5825)
- build(deps): bump github/codeql-action from 4.31.10 to 4.32.4 by [@dependabot](https://github.com/dependabot)\[bot] in [#5833](https://github.com/Stirling-Tools/Stirling-PDF/pull/5833)
- build(deps): bump actions/ai-inference from 2.0.5 to 2.0.7 by [@dependabot](https://github.com/dependabot)\[bot] in [#5831](https://github.com/Stirling-Tools/Stirling-PDF/pull/5831)
- build(deps): bump com.sun.xml.bind:jaxb-core from 2.3.0.1 to 4.0.6 by [@dependabot](https://github.com/dependabot)\[bot] in [#5365](https://github.com/Stirling-Tools/Stirling-PDF/pull/5365)

#### New Contributors

- [@aikido-autofix](https://github.com/aikido-autofix)\[bot] made their first contribution in [#5817](https://github.com/Stirling-Tools/Stirling-PDF/pull/5817)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.3...v2.6.0>

---
##### [\`2.5.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.3)

This release contains:

- New feature for XLSX conversion
- New feature for splitting a page into printable chunks (a3 into 2 a4 etc for posters)
- Keyboard shortcut support for the viewer
- Bug fixes for some viewer issues
- Bug fix for cookie consent showing on desktop builds

#### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@intelliking](https://github.com/intelliking) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

#### New Contributors

- [@intelliking](https://github.com/intelliking) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

<!-- Release notes generated using configuration in .github/release.yml at v2.5.3 -->

#### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@statxc](https://github.com/statxc) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

#### New Contributors

- [@statxc](https://github.com/statxc) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

<!-- Release notes generated using configuration in .github/release.yml at v2.5.3 -->

#### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@statxc](https://github.com/statxc) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

#### New Contributors

- [@statxc](https://github.com/statxc) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

---
##### [\`2.5.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.2)

This is a release for

- Security improvements
- Ruler / Measure support in the viewer
  Bug fixes for:
- writing to forms not working on OSS (package now moved fully to OSS)
- Possible fix for mac desktop issues
- desktop not being detected as desktop all the time
- license checks not having a retry
- desktop having wrong publisher ID

#### What's Changed

##### Enhancements

- Add plist file for Mac permissions by [@jbrunton96](https://github.com/jbrunton96) in [#5756](https://github.com/Stirling-Tools/Stirling-PDF/pull/5756)

##### Minor Enhancements

- ruler support by [@Frooodle](https://github.com/Frooodle) in [#5758](https://github.com/Stirling-Tools/Stirling-PDF/pull/5758)
- fix publishing for tauri author by [@Frooodle](https://github.com/Frooodle) in [#5757](https://github.com/Stirling-Tools/Stirling-PDF/pull/5757)
- dos fixes by [@Frooodle](https://github.com/Frooodle) in [#5759](https://github.com/Stirling-Tools/Stirling-PDF/pull/5759)
- licensere reTry by [@Frooodle](https://github.com/Frooodle) in [#5763](https://github.com/Stirling-Tools/Stirling-PDF/pull/5763)
- authclient by [@Frooodle](https://github.com/Frooodle) in [#5761](https://github.com/Stirling-Tools/Stirling-PDF/pull/5761)
- zipFix by [@Frooodle](https://github.com/Frooodle) in [#5762](https://github.com/Stirling-Tools/Stirling-PDF/pull/5762)
- Update de translation.toml by [@Hugomaulwurf76](https://github.com/Hugomaulwurf76) in [#5736](https://github.com/Stirling-Tools/Stirling-PDF/pull/5736)
- Translate various terms in Italian localization by [@albanobattistella](https://github.com/albanobattistella) in [#5749](https://github.com/Stirling-Tools/Stirling-PDF/pull/5749)
- Move Forms location by [@Frooodle](https://github.com/Frooodle) in [#5769](https://github.com/Stirling-Tools/Stirling-PDF/pull/5769)
- translations ai (please override as you see fit in new PRs these are placeholder) by [@Frooodle](https://github.com/Frooodle) in [#5770](https://github.com/Stirling-Tools/Stirling-PDF/pull/5770)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5675](https://github.com/Stirling-Tools/Stirling-PDF/pull/5675)

##### Other Changes

- build(tauri): enforce Java 17+ requirement in Windows jlink build script by [@Ludy87](https://github.com/Ludy87) in [#5684](https://github.com/Stirling-Tools/Stirling-PDF/pull/5684)

#### New Contributors

- [@Hugomaulwurf76](https://github.com/Hugomaulwurf76) made their first contribution in [#5736](https://github.com/Stirling-Tools/Stirling-PDF/pull/5736)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.1...v2.5.2>

---
##### [\`2.5.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.1)

Several bug fixes in this release

- Login issues showing "something went wrong" when language list = 1
- Forms not showing correctly
- Forms not working on desktop
- Desktop SSO redirect race condition issues
- 431 error for large endpoint for endpoints available

#### What's Changed

##### Minor Enhancements

- Fix SAML login "something went wrong" when language list = 1  by [@Frooodle](https://github.com/Frooodle) in [#5750](https://github.com/Stirling-Tools/Stirling-PDF/pull/5750)
- fix(forms): Update form field UI and behavior for better interactivity and alignment by [@balazs-szucs](https://github.com/balazs-szucs) in [#5747](https://github.com/Stirling-Tools/Stirling-PDF/pull/5747)
- fixes for desktop SSO by [@Frooodle](https://github.com/Frooodle) in [#5751](https://github.com/Stirling-Tools/Stirling-PDF/pull/5751)
- large query reduction by [@Frooodle](https://github.com/Frooodle) in [#5754](https://github.com/Stirling-Tools/Stirling-PDF/pull/5754)
- fix(form-fill): fix hardcoded response by [@balazs-szucs](https://github.com/balazs-szucs) in [#5755](https://github.com/Stirling-Tools/Stirling-PDF/pull/5755)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.0...v2.5.1>

---
##### [\`2.5.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.0)

This is a big update with lots of new functionality and changes like Form fill and redaction/annotation improvements! Also several changes around the login session expiry
Special thanks to [@balazs-szucs](https://github.com/balazs-szucs), who put a lot of work into this release!

New functionality:

- Huge manual redaction changes with colour selection and improved UI
- Add attachment support with sidebar button for viewing attachments etc (Seen in viewer mode)
- FormFill tool with context and UI components for PDF form filling
- Desktop now edits files that have been openned instead of creating new copies
- Extra JWT settings to customise expiry times for desktop and browser
- Add/remove link support

Extra improvements:

- Text selection improvements within the viewer with custom actions
- Improved link handling and link location
- EmbedPDF 2.6.0 upgrade for several bug fixes
- Multiple fixes with the viewer, its functionality, and its export
- PDF Text editor cache / JSON size issues
- Enhanced JWT handling and refreshing for better session management without forced re-logins
- Improved annotation UI
- Files correctly open in the viewer automatically if only 1 file is opened
- Improved tool disable menu to be able to disable all remaining tools and docs

#### What's Changed

##### Enhancements

- feat(redaction): improve manual redaction with color selection and updated UI elements by [@balazs-szucs](https://github.com/balazs-szucs) in [#5679](https://github.com/Stirling-Tools/Stirling-PDF/pull/5679)
- feat(text-selection): implement text selection enhancement for double and triple-click actions by [@balazs-szucs](https://github.com/balazs-szucs) in [#5712](https://github.com/Stirling-Tools/Stirling-PDF/pull/5712)
- feat(linklayer): improve link handling with pdf-lib integration and add link toolbar, add delete link functionality by [@balazs-szucs](https://github.com/balazs-szucs) in [#5715](https://github.com/Stirling-Tools/Stirling-PDF/pull/5715)
- feat(attachments): add attachment support with sidebar and API integration by [@balazs-szucs](https://github.com/balazs-szucs) in [#5673](https://github.com/Stirling-Tools/Stirling-PDF/pull/5673)
- feat(form-fill): FormFill tool with context and UI components for PDF form filling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5711](https://github.com/Stirling-Tools/Stirling-PDF/pull/5711)
- feat(frontend): Upgrade embedPDF to v2.6.0 and migrate to pdf-lib fork, fix attachment/bookmark panel by [@balazs-szucs](https://github.com/balazs-szucs) in [#5723](https://github.com/Stirling-Tools/Stirling-PDF/pull/5723)

##### Minor Enhancements

- Update translation by [@albanobattistella](https://github.com/albanobattistella) in [#5670](https://github.com/Stirling-Tools/Stirling-PDF/pull/5670)
- various  viewer pill fixes by [@reecebrowne](https://github.com/reecebrowne) in [#5714](https://github.com/Stirling-Tools/Stirling-PDF/pull/5714)
- Fix viewer export by [@reecebrowne](https://github.com/reecebrowne) in [#5713](https://github.com/Stirling-Tools/Stirling-PDF/pull/5713)
- fix tool disabling for docs and others by [@Frooodle](https://github.com/Frooodle) in [#5722](https://github.com/Stirling-Tools/Stirling-PDF/pull/5722)
- Preserve local paths for desktop saves by [@Frooodle](https://github.com/Frooodle) in [#5543](https://github.com/Stirling-Tools/Stirling-PDF/pull/5543)
- refactor(api): replace regex string literals with Pattern instances for improved performance and readability by [@balazs-szucs](https://github.com/balazs-szucs) in [#5680](https://github.com/Stirling-Tools/Stirling-PDF/pull/5680)
- refactor: fix homepage file upload path by [@Frooodle](https://github.com/Frooodle) in [#5738](https://github.com/Stirling-Tools/Stirling-PDF/pull/5738)
- PDF Text editor changes by [@Frooodle](https://github.com/Frooodle) in [#5726](https://github.com/Stirling-Tools/Stirling-PDF/pull/5726)
- fix\_env\_files\_for\_tauri by [@ConnorYoh](https://github.com/ConnorYoh) in [#5741](https://github.com/Stirling-Tools/Stirling-PDF/pull/5741)
- JWT enhancements for desktop by [@Frooodle](https://github.com/Frooodle) in [#5742](https://github.com/Stirling-Tools/Stirling-PDF/pull/5742)
- Chore/v2/improve annotation UI by [@reecebrowne](https://github.com/reecebrowne) in [#5724](https://github.com/Stirling-Tools/Stirling-PDF/pull/5724)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.6...v2.5.0>

---
##### [\`2.4.6\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.6)

Several bug fixes for the issues:

- License not always correctly loading due to cache issues
- public endpoints not always accessible when without JWT
- Language not always correctly taking the server's default
- Desktop issues for SAML SSO
- maxFileSize server setting not being handled correctly

As well as

- SSO cleanups
- Extra SSO logging for future issues
- markdown conversion now supports images

#### What's Changed

##### Breaking Changes

- fix(markdown): markdown conversion image handling and zip support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5677](https://github.com/Stirling-Tools/Stirling-PDF/pull/5677)

##### Enhancements

- Enhance SSO SAML in desktop app by [@jbrunton96](https://github.com/jbrunton96) in [#5705](https://github.com/Stirling-Tools/Stirling-PDF/pull/5705)

##### Minor Enhancements

- Fix maxFileSize environment variable support ([#5542](https://github.com/Stirling-Tools/Stirling-PDF/issues/5542)) by [@Eruis2579](https://github.com/Eruis2579) in [#5655](https://github.com/Stirling-Tools/Stirling-PDF/pull/5655)
- Bug fixing and debugs by [@Frooodle](https://github.com/Frooodle) in [#5704](https://github.com/Stirling-Tools/Stirling-PDF/pull/5704)
- fix(api): address potential backend resource leaks and improve frontend accessibility by [@balazs-szucs](https://github.com/balazs-szucs) in [#5678](https://github.com/Stirling-Tools/Stirling-PDF/pull/5678)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5668](https://github.com/Stirling-Tools/Stirling-PDF/pull/5668)
- build(deps): bump com.diffplug.spotless from 8.1.0 to 8.2.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5592](https://github.com/Stirling-Tools/Stirling-PDF/pull/5592)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.5...v2.4.6>

---
##### [\`2.4.5\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.5)

Desktop changes

- Windows desktop MSI to support headless installation with custom parameters to set up server URL and login mode, an example for this would be `msiexec /i "Stirling-PDF-windows-x86_64.msi
  " /qn STIRLING_SERVER_URL="http://192.168.1.53:2357/" STIRLING_LOCK_CONNECTION=1`

`STIRLING_SERVER_URL` auto sets the URL and `STIRLING_LOCK_CONNECTION=1` sets the connection mode to be ONLY self-host server, ensuring no mistaken connections to external servers. Please note this feature is currently in testing, if you have feedback or have tried it please let us know! (Even if it worked perfectly its good to know!)

- SSO UI changes
- support for login method restrictions in desktop
- remembers last entered selfhost URL for easy reconnection

General changes

- SSO functionality cleanups (a few more to come soon!)
- New strict mode for PDF/A conversion for issues were conversation isn't perfect
- redaction improvements

Bug fixes

- SSO auto login mode now working correctly

#### What's Changed

##### Enhancements

- feat:(pdfa-conversion) Implement Strict PDF/A Mode with Verification by [@balazs-szucs](https://github.com/balazs-szucs) in [#5663](https://github.com/Stirling-Tools/Stirling-PDF/pull/5663)
- feat(desktop): show and reuse last used server URL in Setup Wizard by [@Ludy87](https://github.com/Ludy87) in [#5659](https://github.com/Stirling-Tools/Stirling-PDF/pull/5659)
- feat(redaction): update to embedPDF v2.4.0 with unified redaction mode support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5652](https://github.com/Stirling-Tools/Stirling-PDF/pull/5652)

##### Minor Enhancements

- Saml fix by [@Frooodle](https://github.com/Frooodle) in [#5651](https://github.com/Stirling-Tools/Stirling-PDF/pull/5651)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5618](https://github.com/Stirling-Tools/Stirling-PDF/pull/5618)
- fix(frontend): improve synonym search by [@Ludy87](https://github.com/Ludy87) in [#5639](https://github.com/Stirling-Tools/Stirling-PDF/pull/5639)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5666](https://github.com/Stirling-Tools/Stirling-PDF/pull/5666)
- Headless windows installer by [@Frooodle](https://github.com/Frooodle) in [#5664](https://github.com/Stirling-Tools/Stirling-PDF/pull/5664)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5669](https://github.com/Stirling-Tools/Stirling-PDF/pull/5669)
- SSO styling changes  by [@Frooodle](https://github.com/Frooodle) in [#5671](https://github.com/Stirling-Tools/Stirling-PDF/pull/5671)

##### Docker Updates

- build(deps): bump alpine from 3.23.2 to 3.23.3 in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5590](https://github.com/Stirling-Tools/Stirling-PDF/pull/5590)
- chore(ci): update GitHub Actions to latest stable versions by [@Ludy87](https://github.com/Ludy87) in [#5629](https://github.com/Stirling-Tools/Stirling-PDF/pull/5629)

##### Translation Changes

- chore(ci): improve language TOML check output with fixer guidance by [@Ludy87](https://github.com/Ludy87) in [#5638](https://github.com/Stirling-Tools/Stirling-PDF/pull/5638)
- chore(ci): refine pre-commit workflows, add TOML sorting by [@Ludy87](https://github.com/Ludy87) in [#5648](https://github.com/Stirling-Tools/Stirling-PDF/pull/5648)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5667](https://github.com/Stirling-Tools/Stirling-PDF/pull/5667)

##### Development Tools

- chore(vscode): replace deprecated Copilot extension with Copilot Chat by [@Ludy87](https://github.com/Ludy87) in [#5662](https://github.com/Stirling-Tools/Stirling-PDF/pull/5662)

##### Other Changes

- build(deps): bump io.swagger.core.v3:swagger-core-jakarta from 2.2.41 to 2.2.42 by [@dependabot](https://github.com/dependabot)\[bot] in [#5549](https://github.com/Stirling-Tools/Stirling-PDF/pull/5549)
- build(deps): bump org.postgresql:postgresql from 42.7.8 to 42.7.9 by [@dependabot](https://github.com/dependabot)\[bot] in [#5554](https://github.com/Stirling-Tools/Stirling-PDF/pull/5554)
- fix(build): define repositories to resolve test classpath dependencies by [@Ludy87](https://github.com/Ludy87) in [#5650](https://github.com/Stirling-Tools/Stirling-PDF/pull/5650)
- tauri comments by [@Frooodle](https://github.com/Frooodle) in [#5634](https://github.com/Stirling-Tools/Stirling-PDF/pull/5634)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.4...v2.4.5>

---
##### [\`2.4.4\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.4)

Quick fix for page editor bug causes multi-page selection issues

This release also contains

- Italian translations
- Bates stamping functionality to add page numbers
- Extract bookmarks API fix
- Diagnostics command in CLI for easy error reporting (grabs logs into a zip on request for you to view)

#### What's Changed

##### Enhancements

- feat(i18n): add missing compare placeholder and stamp label translations by [@Ludy87](https://github.com/Ludy87) in [#5636](https://github.com/Stirling-Tools/Stirling-PDF/pull/5636)

##### Minor Enhancements

- update to add optional Zero Padding to page numbers (Bates Stamping).… by [@mrober01](https://github.com/mrober01) in [#5612](https://github.com/Stirling-Tools/Stirling-PDF/pull/5612)
- Fix ClassCastException in extractBookmarks endpoint ([#5578](https://github.com/Stirling-Tools/Stirling-PDF/issues/5578)) by [@Eruis2579](https://github.com/Eruis2579) in [#5604](https://github.com/Stirling-Tools/Stirling-PDF/pull/5604)
- Bug/page editor additional fixes by [@reecebrowne](https://github.com/reecebrowne) in [#5660](https://github.com/Stirling-Tools/Stirling-PDF/pull/5660)
- Updated Italian translation by [@albanobattistella](https://github.com/albanobattistella) in [#5637](https://github.com/Stirling-Tools/Stirling-PDF/pull/5637)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5642](https://github.com/Stirling-Tools/Stirling-PDF/pull/5642)

##### Other Changes

- diagnostic script by [@Frooodle](https://github.com/Frooodle) in [#5646](https://github.com/Stirling-Tools/Stirling-PDF/pull/5646)

#### New Contributors

- [@mrober01](https://github.com/mrober01) made their first contribution in [#5612](https://github.com/Stirling-Tools/Stirling-PDF/pull/5612)
- [@Eruis2579](https://github.com/Eruis2579) made their first contribution in [#5604](https://github.com/Stirling-Tools/Stirling-PDF/pull/5604)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.3...v2.4.4>

---
##### [\`2.4.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.3)

Big desktop release today, full of fixes as well as other changes!

- Correctly show desktop and server versioning separately
- Support for watched folders to be recursive and multiple directories to be defined
- Desktop login expiry fix
- Desktop self-host connection improvements (self-sign fixes and others)
- Page editor performance and UI improvements
- frontend error screen appearing during SSO fix
- Desktop CORS fixes

#### What's Changed

##### Enhancements

- feat(settings): display frontend/backend versions and warn on client-server mismatch by [@Ludy87](https://github.com/Ludy87) in [#5571](https://github.com/Stirling-Tools/Stirling-PDF/pull/5571)
- Support multiple pipeline watch directories and configurable pipeline base path by [@Frooodle](https://github.com/Frooodle) in [#5545](https://github.com/Stirling-Tools/Stirling-PDF/pull/5545)

##### Minor Enhancements

- Stop type checking TypeScript files that won't be run by [@jbrunton96](https://github.com/jbrunton96) in [#5607](https://github.com/Stirling-Tools/Stirling-PDF/pull/5607)
- Fixed missing AuthnRequest bug by [@DarioGii](https://github.com/DarioGii) in [#5606](https://github.com/Stirling-Tools/Stirling-PDF/pull/5606)
- Update links to Docs by [@numanair](https://github.com/numanair) in [#5611](https://github.com/Stirling-Tools/Stirling-PDF/pull/5611)
- fix(frontend): prevent hydration errors in admin security form and improve autofill support by [@Ludy87](https://github.com/Ludy87) in [#5613](https://github.com/Stirling-Tools/Stirling-PDF/pull/5613)
- fix(auth): align token refresh handling with updated backend response by [@Ludy87](https://github.com/Ludy87) in [#5609](https://github.com/Stirling-Tools/Stirling-PDF/pull/5609)
- always allow tauri cors by [@Frooodle](https://github.com/Frooodle) in [#5616](https://github.com/Stirling-Tools/Stirling-PDF/pull/5616)
- Bug/pageeditor virtualisation by [@reecebrowne](https://github.com/reecebrowne) in [#5614](https://github.com/Stirling-Tools/Stirling-PDF/pull/5614)
- Stop attempting to refresh Spring tokens in desktop by [@Frooodle](https://github.com/Frooodle) in [#5610](https://github.com/Stirling-Tools/Stirling-PDF/pull/5610)

##### Other Changes

- Update Python dependencies in requirements files by [@Ludy87](https://github.com/Ludy87) in [#5627](https://github.com/Stirling-Tools/Stirling-PDF/pull/5627)
- Pin GitHub Actions and add runner hardening by [@Ludy87](https://github.com/Ludy87) in [#5628](https://github.com/Stirling-Tools/Stirling-PDF/pull/5628)

#### New Contributors

- [@numanair](https://github.com/numanair) made their first contribution in [#5611](https://github.com/Stirling-Tools/Stirling-PDF/pull/5611)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.2...v2.4.3>

---
##### [\`2.4.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.2)

This is a quick update including

- Fixes for Audit display failing under certain scenarios
- Fix for tools not being correctly disabled via disable-endpoints settings
- Text editor font rendering fixes
- New Variables for Stamp PDF feature!

#### What's Changed

##### Enhancements

- feat(stamp): add dynamic variables and templates for stamp text customization by [@balazs-szucs](https://github.com/balazs-szucs) in [#5546](https://github.com/Stirling-Tools/Stirling-PDF/pull/5546)

##### Minor Enhancements

- Fix tool disabling by [@Frooodle](https://github.com/Frooodle) in [#5585](https://github.com/Stirling-Tools/Stirling-PDF/pull/5585)
- Fix Audit & Usage Analytics Sections by [@DarioGii](https://github.com/DarioGii) in [#5586](https://github.com/Stirling-Tools/Stirling-PDF/pull/5586)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5538](https://github.com/Stirling-Tools/Stirling-PDF/pull/5538)

##### Other Changes

- fix: PDF Text Editor file open by [@bittoby](https://github.com/bittoby) in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

#### New Contributors

- [@bittoby](https://github.com/bittoby) made their first contribution in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.1...v2.4.2>

<!-- Release notes generated using configuration in .github/release.yml at v2.4.2 -->

#### What's Changed

##### Enhancements

- feat(stamp): add dynamic variables and templates for stamp text customization by [@balazs-szucs](https://github.com/balazs-szucs) in [#5546](https://github.com/Stirling-Tools/Stirling-PDF/pull/5546)

##### Minor Enhancements

- Fix tool disabling by [@Frooodle](https://github.com/Frooodle) in [#5585](https://github.com/Stirling-Tools/Stirling-PDF/pull/5585)
- Fix Audit & Usage Analytics Sections by [@DarioGii](https://github.com/DarioGii) in [#5586](https://github.com/Stirling-Tools/Stirling-PDF/pull/5586)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5538](https://github.com/Stirling-Tools/Stirling-PDF/pull/5538)

##### Other Changes

- fix: PDF Text Editor file open by [@bittoby](https://github.com/bittoby) in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

#### New Contributors

- [@bittoby](https://github.com/bittoby) made their first contribution in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.1...v2.4.2>

---
##### [\`2.4.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.1)

Lots of bug fixes today!
Fix for HTTPS connection for desktop mode
Xframe option now in settings.yml and options menu for iframe support
Various other bug fixes and dependencies updates!
Mac desktop not starting correctly

#### What's Changed

##### Enhancements

- deps(frontend, tauri): update Tauri, Rust crates, and frontend dependencies by [@Ludy87](https://github.com/Ludy87) in [#5569](https://github.com/Stirling-Tools/Stirling-PDF/pull/5569)

##### Minor Enhancements

- pipeline fixes for naming issues  by [@Frooodle](https://github.com/Frooodle) in [#5570](https://github.com/Stirling-Tools/Stirling-PDF/pull/5570)
- xframe fix new by [@Frooodle](https://github.com/Frooodle) in [#5580](https://github.com/Stirling-Tools/Stirling-PDF/pull/5580)
- tool tags by [@Frooodle](https://github.com/Frooodle) in [#5568](https://github.com/Stirling-Tools/Stirling-PDF/pull/5568)
- deps(embedPDF): Bump codebase to embedPDF v2.3.0 and adjust codebase for new features by [@balazs-szucs](https://github.com/balazs-szucs) in [#5567](https://github.com/Stirling-Tools/Stirling-PDF/pull/5567)
- possible login fixes by [@Frooodle](https://github.com/Frooodle) in [#5444](https://github.com/Stirling-Tools/Stirling-PDF/pull/5444)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5581](https://github.com/Stirling-Tools/Stirling-PDF/pull/5581)

##### Docker Updates

- chore(ci): remove automated version sync job from build workflow by [@Ludy87](https://github.com/Ludy87) in [#5547](https://github.com/Stirling-Tools/Stirling-PDF/pull/5547)

##### Other Changes

- build(deps): bump pypdf from 6.6.0 to 6.6.2 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5577](https://github.com/Stirling-Tools/Stirling-PDF/pull/5577)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.0...v2.4.1>

---
##### [\`2.4.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.0)

Lots of new features in this release

- database backup management (Only for internal H2 database users)
- Full 2FA support with One-time-password auth code app support!
- Get info supporting better compliance verification
- PDF/X conversions
- automation tool now export into folder scan JSONs for folder automation

Bug fixes for

- Sign tool
- SSO user creation
- addStamp not handling timestamps

Thanks as always for all the fixes and work everyone has been doing! such as [@balazs-szucs](https://github.com/balazs-szucs) or the new bug fix from [@Joey4](https://github.com/Joey4) !
Special thanks to [@Ludy87](https://github.com/Ludy87) for introducing the awesome 2FA feature!

#### What's Changed

##### Enhancements

- feat(admin): add H2 database backup & restore management to admin UI by [@Ludy87](https://github.com/Ludy87) in [#5528](https://github.com/Stirling-Tools/Stirling-PDF/pull/5528)
- feat(frontend): enhance icon detection and update config navigation icon by [@Ludy87](https://github.com/Ludy87) in [#5524](https://github.com/Stirling-Tools/Stirling-PDF/pull/5524)
- feat(security): add TOTP-based multi-factor authentication with backend and UI support by [@Ludy87](https://github.com/Ludy87) in [#5417](https://github.com/Stirling-Tools/Stirling-PDF/pull/5417)
- feat(compliance): implement compliance verfication for get info on PDF by [@balazs-szucs](https://github.com/balazs-szucs) in [#5435](https://github.com/Stirling-Tools/Stirling-PDF/pull/5435)

##### Minor Enhancements

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5530](https://github.com/Stirling-Tools/Stirling-PDF/pull/5530)
- fix(annotations): fix error 300 on sign frontend by [@balazs-szucs](https://github.com/balazs-szucs) in [#5536](https://github.com/Stirling-Tools/Stirling-PDF/pull/5536)
- Fix: Whitelist health endpoints in Security and Enterprise Filter + fix keep original commit by [@Frooodle](https://github.com/Frooodle) in [#5494](https://github.com/Stirling-Tools/Stirling-PDF/pull/5494)
- API cleanups by [@Frooodle](https://github.com/Frooodle) in [#5537](https://github.com/Stirling-Tools/Stirling-PDF/pull/5537)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5490](https://github.com/Stirling-Tools/Stirling-PDF/pull/5490)
- refactor(security): clean up SSO handling, harden URL parsing, and bump dependencies by [@Ludy87](https://github.com/Ludy87) in [#5523](https://github.com/Stirling-Tools/Stirling-PDF/pull/5523)
- fix(common): 🛡️CWE-681 & CWE-197 eliminate tainted numeric casts in size parsing by using BigDecimal with range guards by [@Ludy87](https://github.com/Ludy87) in [#5521](https://github.com/Stirling-Tools/Stirling-PDF/pull/5521)
- build(deps): bump nginx from `c083c37` to `b0f7830` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5500](https://github.com/Stirling-Tools/Stirling-PDF/pull/5500)
- build(deps): bump node from `f4769ca` to `e80397b` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5498](https://github.com/Stirling-Tools/Stirling-PDF/pull/5498)
- Fix V2 SSO user creation by [@Frooodle](https://github.com/Frooodle) in [#5079](https://github.com/Stirling-Tools/Stirling-PDF/pull/5079)
- removal of old java desktop + workspace change in tauri by [@Frooodle](https://github.com/Frooodle) in [#5459](https://github.com/Stirling-Tools/Stirling-PDF/pull/5459)
- Date and time placeholders in addTextStamp are not working by [@Joey4](https://github.com/Joey4) in [#5446](https://github.com/Stirling-Tools/Stirling-PDF/pull/5446)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5539](https://github.com/Stirling-Tools/Stirling-PDF/pull/5539)
- \[V2] feat(convert): add PDF/X export option by [@balazs-szucs](https://github.com/balazs-szucs) in [#5285](https://github.com/Stirling-Tools/Stirling-PDF/pull/5285)
- V2 Show enterprise demo messages for audit and usage by [@Frooodle](https://github.com/Frooodle) in [#5226](https://github.com/Stirling-Tools/Stirling-PDF/pull/5226)
- Export folder scanning by [@Frooodle](https://github.com/Frooodle) in [#5544](https://github.com/Stirling-Tools/Stirling-PDF/pull/5544)
- translations by [@Frooodle](https://github.com/Frooodle) in [#5541](https://github.com/Stirling-Tools/Stirling-PDF/pull/5541)

##### Docker Updates

- Add sync-versions job to GitHub Actions workflow by [@Ludy87](https://github.com/Ludy87) in [#5228](https://github.com/Stirling-Tools/Stirling-PDF/pull/5228)
- build(deps): bump debian from `f668110` to `ed542b2` in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5495](https://github.com/Stirling-Tools/Stirling-PDF/pull/5495)

##### Other Changes

- build(deps): bump logback from 1.5.23 to 1.5.24 by [@dependabot](https://github.com/dependabot)\[bot] in [#5468](https://github.com/Stirling-Tools/Stirling-PDF/pull/5468)
- build(deps): bump io.micrometer:micrometer-core from 1.16.1 to 1.16.2 by [@dependabot](https://github.com/dependabot)\[bot] in [#5466](https://github.com/Stirling-Tools/Stirling-PDF/pull/5466)

#### New Contributors

- [@Joey4](https://github.com/Joey4) made their first contribution in [#5446](https://github.com/Stirling-Tools/Stirling-PDF/pull/5446)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.3.1...v2.4.0>

---
##### [\`2.3.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.3.1)

Several bug fixes , including

- Scroll bar not showing correctly in settings menu
- Automate menus showing options correctly

and several other change,s such as SVG to PDF conversion and performance changes throughout app

#### What's Changed

##### Enhancements

- feat(conversion): add SVG to PDF conversion functionality by [@balazs-szucs](https://github.com/balazs-szucs) in [#5431](https://github.com/Stirling-Tools/Stirling-PDF/pull/5431)
- feat(pipeline): improve file processing with resource management and temp file handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5488](https://github.com/Stirling-Tools/Stirling-PDF/pull/5488)
- feat(admin): add tessdata language management for OCR and download support by [@Ludy87](https://github.com/Ludy87) in [#5519](https://github.com/Stirling-Tools/Stirling-PDF/pull/5519)

##### Minor Enhancements

- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5489](https://github.com/Stirling-Tools/Stirling-PDF/pull/5489)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5484](https://github.com/Stirling-Tools/Stirling-PDF/pull/5484)
- \[V2] fix(automation): enhance parameter handling and default values across operations, fix error in ManyToOne tools by [@balazs-szucs](https://github.com/balazs-szucs) in [#5123](https://github.com/Stirling-Tools/Stirling-PDF/pull/5123)
- scrollbar fixes by [@Frooodle](https://github.com/Frooodle) in [#5529](https://github.com/Stirling-Tools/Stirling-PDF/pull/5529)
- Fix hook ordering for endpoint name resolution by [@Frooodle](https://github.com/Frooodle) in [#5517](https://github.com/Stirling-Tools/Stirling-PDF/pull/5517)
- fix(automation): add zIndex and withinPortal props to dropdown components for improved UI consistency by [@balazs-szucs](https://github.com/balazs-szucs) in [#5527](https://github.com/Stirling-Tools/Stirling-PDF/pull/5527)
- refactor: remove legacy Thymeleaf web UI controllers and templates by [@Ludy87](https://github.com/Ludy87) in [#5406](https://github.com/Stirling-Tools/Stirling-PDF/pull/5406)
- fix(pipeline): avoid bad multipart by letting RestTemplate set boundary by [@Ludy87](https://github.com/Ludy87) in [#5522](https://github.com/Stirling-Tools/Stirling-PDF/pull/5522)
- chore(i18n): update and expand Dutch (nl-NL) translations by [@Stephan-P](https://github.com/Stephan-P) in [#5355](https://github.com/Stirling-Tools/Stirling-PDF/pull/5355)
- Update Italian translations by [@albanobattistella](https://github.com/albanobattistella) in [#5508](https://github.com/Stirling-Tools/Stirling-PDF/pull/5508)

##### Docker Updates

- chore(ci): enable Gradle dependency caching across GitHub workflows by [@Ludy87](https://github.com/Ludy87) in [#5400](https://github.com/Stirling-Tools/Stirling-PDF/pull/5400)
- build(deps): bump actions/checkout from 4.2.2 to 6.0.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5465](https://github.com/Stirling-Tools/Stirling-PDF/pull/5465)

##### Development Tools

- build(deps-dev): bump stylelint-config-standard from 39.0.1 to 40.0.0 in /devTools by [@dependabot](https://github.com/dependabot)\[bot] in [#5504](https://github.com/Stirling-Tools/Stirling-PDF/pull/5504)

##### Other Changes

- build(deps): bump actions/download-artifact from 6.0.0 to 7.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5503](https://github.com/Stirling-Tools/Stirling-PDF/pull/5503)
- build(deps): bump reportlab from 4.4.5 to 4.4.9 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5505](https://github.com/Stirling-Tools/Stirling-PDF/pull/5505)

---
##### [\`2.3.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.3.0)

Several important bug fixes in this release related to

- File conversion threading
- Non-roman alphabet files processing incorrectly
- Desktop app bugs (Lots more fixes coming!)
- And many others!

We also have some really cool features introduced such as

- Telegram bot (In Connections menu or settings.yml)
- PDF to EPUB and AZW3
- MSG support

#### What's Changed

##### Enhancements

- feat(build): enhance JaCoCo reporting with coverage summary and enforce thresholds by [@Ludy87](https://github.com/Ludy87) in [#5352](https://github.com/Stirling-Tools/Stirling-PDF/pull/5352)
- feat(ui): prevent self-modification in People management and highlight current user by [@Ludy87](https://github.com/Ludy87) in [#5441](https://github.com/Stirling-Tools/Stirling-PDF/pull/5441)
- feat(conversion): refactor EML parser to use Simple Java Mail library and add MSG support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5427](https://github.com/Stirling-Tools/Stirling-PDF/pull/5427)
- feat(conversion): add PDF to EPUB/AZW3 conversion support and settings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5434](https://github.com/Stirling-Tools/Stirling-PDF/pull/5434)

##### Minor Enhancements

- build(ci): pin base container images, switch npm install to npm ci, and harden EML error handling by [@Ludy87](https://github.com/Ludy87) in [#5353](https://github.com/Stirling-Tools/Stirling-PDF/pull/5353)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5426](https://github.com/Stirling-Tools/Stirling-PDF/pull/5426)
- Updated ga-IE translations and added keys to ignore list by [@aindriu80](https://github.com/aindriu80) in [#5178](https://github.com/Stirling-Tools/Stirling-PDF/pull/5178)
- fix(api): return JSON responses for admin settings + API key endpoints to prevent Tauri client parse errors by [@Ludy87](https://github.com/Ludy87) in [#5437](https://github.com/Stirling-Tools/Stirling-PDF/pull/5437)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5363](https://github.com/Stirling-Tools/Stirling-PDF/pull/5363)
- build(deps): bump node from 20-alpine to 25-alpine in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5311](https://github.com/Stirling-Tools/Stirling-PDF/pull/5311)
- build(deps): bump nginx from `8491795` to `c083c37` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5448](https://github.com/Stirling-Tools/Stirling-PDF/pull/5448)
- build(deps): bump globals from 16.5.0 to 17.0.0 in /frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5413](https://github.com/Stirling-Tools/Stirling-PDF/pull/5413)
- Add Telegram bot integration for pipeline processing by [@Ludy87](https://github.com/Ludy87) in [#5185](https://github.com/Stirling-Too…
renovate bot added a commit to sdwilsh/ansible-playbooks that referenced this pull request Mar 21, 2026
… docker tag to v2

##### [\`2.7.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.3)

- New PDF read aloud feature in viewer mode to "speak" the PDF to you, will be improved more going forwards!
- Improved annotation handling in annotation UI
- Mac printing is finally working on desktop app!
- Several general bug fixes such as Fix non-ASCII characters in headers being rejected
- Fix bug for HTTP2 support

In this release, we have also removed the remove-image tool temporarily, along with some changes to folder watching. If you use these, we recommend holding off on this release till our 2.8.0 release, planned for release in the next few days

#### What's Changed

##### Enhancements

- feat(http2): add jetty-alpn-java-server dependency for HTTP/2 support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5945](https://github.com/Stirling-Tools/Stirling-PDF/pull/5945)

##### Minor Enhancements

- Improve annotations by [@EthanHealy01](https://github.com/EthanHealy01) in [#5919](https://github.com/Stirling-Tools/Stirling-PDF/pull/5919)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5798](https://github.com/Stirling-Tools/Stirling-PDF/pull/5798)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5930](https://github.com/Stirling-Tools/Stirling-PDF/pull/5930)
- Fix printing on Mac desktop by [@jbrunton96](https://github.com/jbrunton96) in [#5920](https://github.com/Stirling-Tools/Stirling-PDF/pull/5920)
- Delete code from invalid license by [@Frooodle](https://github.com/Frooodle) in [#5947](https://github.com/Stirling-Tools/Stirling-PDF/pull/5947)
- fix jumping cursor bug by [@rafaroseira](https://github.com/rafaroseira) in [#5937](https://github.com/Stirling-Tools/Stirling-PDF/pull/5937)
- Fix `any` type usage in the `saas/` folder by [@jbrunton96](https://github.com/jbrunton96) in [#5934](https://github.com/Stirling-Tools/Stirling-PDF/pull/5934)
- Unify creditCosts.ts files by [@jbrunton96](https://github.com/jbrunton96) in [#5952](https://github.com/Stirling-Tools/Stirling-PDF/pull/5952)
- Hotfix-cant-run-tools-when-no-credits by [@ConnorYoh](https://github.com/ConnorYoh) in [#5955](https://github.com/Stirling-Tools/Stirling-PDF/pull/5955)
- Fix non-ASCII characters in headers being rejected ([#5377](https://github.com/Stirling-Tools/Stirling-PDF/issues/5377)) by [@Eruis2579](https://github.com/Eruis2579) in [#5699](https://github.com/Stirling-Tools/Stirling-PDF/pull/5699)
- speaking! by [@Frooodle](https://github.com/Frooodle) in [#5925](https://github.com/Stirling-Tools/Stirling-PDF/pull/5925)

##### Docker Updates

- build(deps): bump step-security/harden-runner from 2.14.0 to 2.15.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5896](https://github.com/Stirling-Tools/Stirling-PDF/pull/5896)
- build(deps): bump crazy-max/ghaction-github-runtime from 3.1.0 to 4.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5890](https://github.com/Stirling-Tools/Stirling-PDF/pull/5890)
- build(deps): bump docker/metadata-action from 5.10.0 to 6.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5889](https://github.com/Stirling-Tools/Stirling-PDF/pull/5889)
- build(deps): bump actions/setup-python from 6.1.0 to 6.2.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5886](https://github.com/Stirling-Tools/Stirling-PDF/pull/5886)
- build(deps): bump actions/cache from 4.3.0 to 5.0.3 by [@dependabot](https://github.com/dependabot)\[bot] in [#5940](https://github.com/Stirling-Tools/Stirling-PDF/pull/5940)
- build(deps): bump dorny/paths-filter from 3.0.2 to 4.0.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5943](https://github.com/Stirling-Tools/Stirling-PDF/pull/5943)
- build(deps): bump actions/upload-artifact from 6.0.0 to 7.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5939](https://github.com/Stirling-Tools/Stirling-PDF/pull/5939)
- Fix Docker builds on Debian by [@unlair](https://github.com/unlair) in [#5936](https://github.com/Stirling-Tools/Stirling-PDF/pull/5936)

##### Other Changes

- build(deps): bump actions/download-artifact from 7.0.0 to 8.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5887](https://github.com/Stirling-Tools/Stirling-PDF/pull/5887)
- Add SaaS AI engine by [@jbrunton96](https://github.com/jbrunton96) in [#5907](https://github.com/Stirling-Tools/Stirling-PDF/pull/5907)
- build(deps): bump srvaroa/labeler from 1.13.0 to 1.14.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5942](https://github.com/Stirling-Tools/Stirling-PDF/pull/5942)
- build(deps): bump github/codeql-action from 4.32.4 to 4.32.6 by [@dependabot](https://github.com/dependabot)\[bot] in [#5941](https://github.com/Stirling-Tools/Stirling-PDF/pull/5941)

#### New Contributors

- [@rafaroseira](https://github.com/rafaroseira) made their first contribution in [#5937](https://github.com/Stirling-Tools/Stirling-PDF/pull/5937)
- [@unlair](https://github.com/unlair) made their first contribution in [#5936](https://github.com/Stirling-Tools/Stirling-PDF/pull/5936)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.7.2...v2.7.3>

---
##### [\`2.7.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.2)

Had a bug where self-hosted connections via desktop would stop working, thinking they were connecting to a non selfhost instance

#### What's Changed

##### Minor Enhancements

- Check if saas before blocking credit insufficiencies by [@ConnorYoh](https://github.com/ConnorYoh) in [#5929](https://github.com/Stirling-Tools/Stirling-PDF/pull/5929)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.7.1...v2.7.2>

<!-- Release notes generated using configuration in .github/release.yml at v2.7.2 -->

#### What's Changed

##### Minor Enhancements

- Check if saas before blocking credit insufficiencies by [@ConnorYoh](https://github.com/ConnorYoh) in [#5929](https://github.com/Stirling-Tools/Stirling-PDF/pull/5929)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.7.1...v2.7.2>

---
##### [\`2.7.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.1)

Bug fixes for various issues such as:

- Desktop conversions mistakenly doing a 'save' to 'save as'
- Desktop 'open with PDF' having invalid description on windows
- Posthog still creating a cookie even when its not used (still a  fully unused cookie tho)
- Desktop not falling back to local connection if on selfhosted and server down
- Rotate on large docs not always working correctly

#### What's Changed

##### Minor Enhancements

- Chore/v2/transforms as root by [@reecebrowne](https://github.com/reecebrowne) in [#5868](https://github.com/Stirling-Tools/Stirling-PDF/pull/5868)
- Limit PostHog cookie to Stirling PDF's subdomain only by [@bban160](https://github.com/bban160) in [#5882](https://github.com/Stirling-Tools/Stirling-PDF/pull/5882)
- Posthog-fixes by [@ConnorYoh](https://github.com/ConnorYoh) in [#5901](https://github.com/Stirling-Tools/Stirling-PDF/pull/5901)
- Get rid of bad description for file association on Windows by [@jbrunton96](https://github.com/jbrunton96) in [#5905](https://github.com/Stirling-Tools/Stirling-PDF/pull/5905)
- Desktop: Fallback to local backend if self-hosted server is offline by [@ConnorYoh](https://github.com/ConnorYoh) in [#5880](https://github.com/Stirling-Tools/Stirling-PDF/pull/5880)
- Add SaaS frontend code by [@jbrunton96](https://github.com/jbrunton96) in [#5879](https://github.com/Stirling-Tools/Stirling-PDF/pull/5879)
- Manage state of price-lookup calls by [@ConnorYoh](https://github.com/ConnorYoh) in [#5915](https://github.com/Stirling-Tools/Stirling-PDF/pull/5915)
- Add system for managing env vars by [@jbrunton96](https://github.com/jbrunton96) in [#5902](https://github.com/Stirling-Tools/Stirling-PDF/pull/5902)
- Fix rotate failing on large documents by [@reecebrowne](https://github.com/reecebrowne) in [#5917](https://github.com/Stirling-Tools/Stirling-PDF/pull/5917)
- Cleanup-conversion-translations by [@ConnorYoh](https://github.com/ConnorYoh) in [#5906](https://github.com/Stirling-Tools/Stirling-PDF/pull/5906)
- Update Italian translations by [@albanobattistella](https://github.com/albanobattistella) in [#5884](https://github.com/Stirling-Tools/Stirling-PDF/pull/5884)

##### Development Tools

- Move AI advice to AGENTS.md and add symlink from CLAUDE.md by [@jbrunton96](https://github.com/jbrunton96) in [#5914](https://github.com/Stirling-Tools/Stirling-PDF/pull/5914)

#### New Contributors

- [@bban160](https://github.com/bban160) made their first contribution in [#5882](https://github.com/Stirling-Tools/Stirling-PDF/pull/5882)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.7.0...v2.7.1>

---
##### [\`2.7.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.0)

Lots of changes in this release yet again!

App:

- option to hide google drive and mobile upload when disabled in 'my files' view
- New search bar to search settings menu easily
- Auditing has improved, new filehash/author options are supported with better reporting overall (We recommend enterprise users to backup their Stirling database before updating to be safe, although expect no issues)

Desktop:

- Desktop app correctly returns to its previous window state and location as its previous launch
- Desktop app supports OS notifications if it finishes working on tasks whilst minimised

Bugs fixed:

- Pipeline erroring in merge tool and others based on parameters
- Certification signature stamps not showing correctly in the viewer
- English was being enabled even when it was disabled in settings

#### What's Changed

##### Enhancements

- settings menu reworks by [@Frooodle](https://github.com/Frooodle) in [#5864](https://github.com/Stirling-Tools/Stirling-PDF/pull/5864)

##### Minor Enhancements

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5775](https://github.com/Stirling-Tools/Stirling-PDF/pull/5775)
- Persist Tauri window state between launches by [@Frooodle](https://github.com/Frooodle) in [#5871](https://github.com/Stirling-Tools/Stirling-PDF/pull/5871)
- tauri notifications by [@Frooodle](https://github.com/Frooodle) in [#5875](https://github.com/Stirling-Tools/Stirling-PDF/pull/5875)
- Audit fixes and improvements by [@Frooodle](https://github.com/Frooodle) in [#5835](https://github.com/Stirling-Tools/Stirling-PDF/pull/5835)
- fix: merge pdf pipeline validation by [@RenzoMXD](https://github.com/RenzoMXD) in [#5799](https://github.com/Stirling-Tools/Stirling-PDF/pull/5799)
- Fix signatures not showing by [@ConnorYoh](https://github.com/ConnorYoh) in [#5872](https://github.com/Stirling-Tools/Stirling-PDF/pull/5872)
- Add the production billing portal link for static plan page by [@ConnorYoh](https://github.com/ConnorYoh) in [#5860](https://github.com/Stirling-Tools/Stirling-PDF/pull/5860)
- option to hide google drive and add settings by [@Frooodle](https://github.com/Frooodle) in [#5863](https://github.com/Stirling-Tools/Stirling-PDF/pull/5863)
- stop enabling english by [@Frooodle](https://github.com/Frooodle) in [#5874](https://github.com/Stirling-Tools/Stirling-PDF/pull/5874)
- Add searchable settings selector to AppConfigModal and improve nav behavior by [@Frooodle](https://github.com/Frooodle) in [#5873](https://github.com/Stirling-Tools/Stirling-PDF/pull/5873)

##### Docker Updates

- build(deps): bump actions/setup-node from 4.4.0 to 6.2.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5691](https://github.com/Stirling-Tools/Stirling-PDF/pull/5691)

##### Other Changes

- Don't build mac if you don't have the secrets by [@ConnorYoh](https://github.com/ConnorYoh) in [#5861](https://github.com/Stirling-Tools/Stirling-PDF/pull/5861)
- build(deps): bump digicert/ssm-code-signing from 1.2.0 to 1.2.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5692](https://github.com/Stirling-Tools/Stirling-PDF/pull/5692)
- build(deps): bump pypdf from 6.7.4 to 6.7.5 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5853](https://github.com/Stirling-Tools/Stirling-PDF/pull/5853)
- translations and version bump by [@Frooodle](https://github.com/Frooodle) in [#5878](https://github.com/Stirling-Tools/Stirling-PDF/pull/5878)

#### New Contributors

- [@RenzoMXD](https://github.com/RenzoMXD) made their first contribution in [#5799](https://github.com/Stirling-Tools/Stirling-PDF/pull/5799)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.6.0...v2.7.0>

---
##### [\`2.6.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.6.0)

In this update, we have drastically improved Stirling PDFs memory usage and startup performance in our testing you should see around a 30% reduction in both idle usage and startup speed
We have also dramatically reduced the filesize of the docker by 30-40%

Breaking updates:
No longer supporting JDK 17, we have moved to JDK 21-25 and are recommending all jar installs to upgrade to JDK 25 for best performance

Other updates

- Desktop now supports running non installed tools by optionally connecting to Stirling cloud server IF a user chooses to and is already running via login to cloud
- Several dependencies have been updated
- Security patches

Bug fixes

- Health check failing under certain auth scenarios
- Crop not working for desktop

#### What's Changed

##### Enhancements

- feat(docker): update base images to Java 25, Spring 4, Jackson 3, Gradle 9 and optimize JVM options (Project Lilliput) by [@balazs-szucs](https://github.com/balazs-szucs) in [#5725](https://github.com/Stirling-Tools/Stirling-PDF/pull/5725)
- feat(annotation): add moveAnnotation API for efficient repositioning of annotations, and bump embed to 2.7.0 by [@balazs-szucs](https://github.com/balazs-szucs) in [#5809](https://github.com/Stirling-Tools/Stirling-PDF/pull/5809)
- feat(conversion): switch PDF input engine to pdftohtml for improved performance and reduced dependencies by [@balazs-szucs](https://github.com/balazs-szucs) in [#5820](https://github.com/Stirling-Tools/Stirling-PDF/pull/5820)
- feat(aot): add aot-diagnostics.sh for AOT cache diagnostics and validation by [@balazs-szucs](https://github.com/balazs-szucs) in [#5848](https://github.com/Stirling-Tools/Stirling-PDF/pull/5848)

##### Minor Enhancements

- Update frontend minor package versions by [@jbrunton96](https://github.com/jbrunton96) in [#5787](https://github.com/Stirling-Tools/Stirling-PDF/pull/5787)
- Sync up Tauri versions by [@jbrunton96](https://github.com/jbrunton96) in [#5789](https://github.com/Stirling-Tools/Stirling-PDF/pull/5789)
- zip and response issues by [@Frooodle](https://github.com/Frooodle) in [#5786](https://github.com/Stirling-Tools/Stirling-PDF/pull/5786)
- Change to use dpdm for circular import scanning by [@jbrunton96](https://github.com/jbrunton96) in [#5788](https://github.com/Stirling-Tools/Stirling-PDF/pull/5788)
- Cachefixing test by [@Frooodle](https://github.com/Frooodle) in [#5793](https://github.com/Stirling-Tools/Stirling-PDF/pull/5793)
- Desktop connection SaaS: config, billing, team support by [@ConnorYoh](https://github.com/ConnorYoh) in [#5768](https://github.com/Stirling-Tools/Stirling-PDF/pull/5768)
- Switch to use ESLint 10 by [@jbrunton96](https://github.com/jbrunton96) in [#5794](https://github.com/Stirling-Tools/Stirling-PDF/pull/5794)
- cleanups by [@Frooodle](https://github.com/Frooodle) in [#5795](https://github.com/Stirling-Tools/Stirling-PDF/pull/5795)
- DocumentBuilderFactory limiting by [@Frooodle](https://github.com/Frooodle) in [#5797](https://github.com/Stirling-Tools/Stirling-PDF/pull/5797)
- lint by [@reecebrowne](https://github.com/reecebrowne) in [#5802](https://github.com/Stirling-Tools/Stirling-PDF/pull/5802)
- Harden shared signature endpoints  by [@Frooodle](https://github.com/Frooodle) in [#5806](https://github.com/Stirling-Tools/Stirling-PDF/pull/5806)
- open-saml bumps by [@Frooodle](https://github.com/Frooodle) in [#5805](https://github.com/Stirling-Tools/Stirling-PDF/pull/5805)
- fix split cuased by defaultParameters breaking dynamic endpoint tools by [@Frooodle](https://github.com/Frooodle) in [#5838](https://github.com/Stirling-Tools/Stirling-PDF/pull/5838)
- hardening by [@Frooodle](https://github.com/Frooodle) in [#5807](https://github.com/Stirling-Tools/Stirling-PDF/pull/5807)
- Fix health status checks falling under mettric flag by [@Frooodle](https://github.com/Frooodle) in [#5821](https://github.com/Stirling-Tools/Stirling-PDF/pull/5821)
- Frontend and Desktop audit fixes by [@ConnorYoh](https://github.com/ConnorYoh) in [#5840](https://github.com/Stirling-Tools/Stirling-PDF/pull/5840)
- refactor(merge,split,json): adopt streaming approach and standardize types, address gradle warnings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5803](https://github.com/Stirling-Tools/Stirling-PDF/pull/5803)
- fallback for /api/v1/config/endpoints-availability by [@ConnorYoh](https://github.com/ConnorYoh) in [#5842](https://github.com/Stirling-Tools/Stirling-PDF/pull/5842)
- Add check for ghostscript before plowing on with removeDataOutsideCrop by [@ConnorYoh](https://github.com/ConnorYoh) in [#5845](https://github.com/Stirling-Tools/Stirling-PDF/pull/5845)
- Fix split tooltips by [@reecebrowne](https://github.com/reecebrowne) in [#5847](https://github.com/Stirling-Tools/Stirling-PDF/pull/5847)

##### Docker Updates

- disable other dockers by [@Frooodle](https://github.com/Frooodle) in [#5792](https://github.com/Stirling-Tools/Stirling-PDF/pull/5792)
- docker cache fix by [@Frooodle](https://github.com/Frooodle) in [#5801](https://github.com/Stirling-Tools/Stirling-PDF/pull/5801)
- \[Aikido] AI Fix for 3rd party Github Actions should be pinned by [@aikido-autofix](https://github.com/aikido-autofix)\[bot] in [#5817](https://github.com/Stirling-Tools/Stirling-PDF/pull/5817)
- fix(aot): use Spring Boot exploded layer format for aot cache by [@balazs-szucs](https://github.com/balazs-szucs) in [#5811](https://github.com/Stirling-Tools/Stirling-PDF/pull/5811)
- \[StepSecurity] Apply security best practices by [@step-security-bot](https://github.com/step-security-bot) in [#5830](https://github.com/Stirling-Tools/Stirling-PDF/pull/5830)
- tauri jdk25 and docs by [@Frooodle](https://github.com/Frooodle) in [#5814](https://github.com/Stirling-Tools/Stirling-PDF/pull/5814)

##### Development Tools

- build(deps): bump ajv from 8.17.1 to 8.18.0 in /devTools in the npm\_and\_yarn group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5774](https://github.com/Stirling-Tools/Stirling-PDF/pull/5774)
- build(deps-dev): bump stylelint from 16.26.1 to 17.4.0 in /devTools by [@dependabot](https://github.com/dependabot)\[bot] in [#5822](https://github.com/Stirling-Tools/Stirling-PDF/pull/5822)

##### Other Changes

- build(deps-dev): bump pillow from 12.1.0 to 12.1.1 in /.github/scripts in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5720](https://github.com/Stirling-Tools/Stirling-PDF/pull/5720)
- build(deps): bump pillow from 12.1.0 to 12.1.1 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5719](https://github.com/Stirling-Tools/Stirling-PDF/pull/5719)
- deps by [@Frooodle](https://github.com/Frooodle) in [#5796](https://github.com/Stirling-Tools/Stirling-PDF/pull/5796)
- chore(deps): update dependencies for security by [@balazs-szucs](https://github.com/balazs-szucs) in [#5813](https://github.com/Stirling-Tools/Stirling-PDF/pull/5813)
- ci: provide default desktop env vars in tauri GitHub Actions builds by [@Frooodle](https://github.com/Frooodle) in [#5815](https://github.com/Stirling-Tools/Stirling-PDF/pull/5815)
- skip certs by [@Frooodle](https://github.com/Frooodle) in [#5819](https://github.com/Stirling-Tools/Stirling-PDF/pull/5819)
- build(deps): bump pypdf from 6.6.2 to 6.7.4 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5825](https://github.com/Stirling-Tools/Stirling-PDF/pull/5825)
- build(deps): bump github/codeql-action from 4.31.10 to 4.32.4 by [@dependabot](https://github.com/dependabot)\[bot] in [#5833](https://github.com/Stirling-Tools/Stirling-PDF/pull/5833)
- build(deps): bump actions/ai-inference from 2.0.5 to 2.0.7 by [@dependabot](https://github.com/dependabot)\[bot] in [#5831](https://github.com/Stirling-Tools/Stirling-PDF/pull/5831)
- build(deps): bump com.sun.xml.bind:jaxb-core from 2.3.0.1 to 4.0.6 by [@dependabot](https://github.com/dependabot)\[bot] in [#5365](https://github.com/Stirling-Tools/Stirling-PDF/pull/5365)

#### New Contributors

- [@aikido-autofix](https://github.com/aikido-autofix)\[bot] made their first contribution in [#5817](https://github.com/Stirling-Tools/Stirling-PDF/pull/5817)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.3...v2.6.0>

---
##### [\`2.5.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.3)

This release contains:

- New feature for XLSX conversion
- New feature for splitting a page into printable chunks (a3 into 2 a4 etc for posters)
- Keyboard shortcut support for the viewer
- Bug fixes for some viewer issues
- Bug fix for cookie consent showing on desktop builds

#### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@intelliking](https://github.com/intelliking) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

#### New Contributors

- [@intelliking](https://github.com/intelliking) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

<!-- Release notes generated using configuration in .github/release.yml at v2.5.3 -->

#### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@statxc](https://github.com/statxc) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

#### New Contributors

- [@statxc](https://github.com/statxc) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

<!-- Release notes generated using configuration in .github/release.yml at v2.5.3 -->

#### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@statxc](https://github.com/statxc) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

#### New Contributors

- [@statxc](https://github.com/statxc) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

---
##### [\`2.5.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.2)

This is a release for

- Security improvements
- Ruler / Measure support in the viewer
  Bug fixes for:
- writing to forms not working on OSS (package now moved fully to OSS)
- Possible fix for mac desktop issues
- desktop not being detected as desktop all the time
- license checks not having a retry
- desktop having wrong publisher ID

#### What's Changed

##### Enhancements

- Add plist file for Mac permissions by [@jbrunton96](https://github.com/jbrunton96) in [#5756](https://github.com/Stirling-Tools/Stirling-PDF/pull/5756)

##### Minor Enhancements

- ruler support by [@Frooodle](https://github.com/Frooodle) in [#5758](https://github.com/Stirling-Tools/Stirling-PDF/pull/5758)
- fix publishing for tauri author by [@Frooodle](https://github.com/Frooodle) in [#5757](https://github.com/Stirling-Tools/Stirling-PDF/pull/5757)
- dos fixes by [@Frooodle](https://github.com/Frooodle) in [#5759](https://github.com/Stirling-Tools/Stirling-PDF/pull/5759)
- licensere reTry by [@Frooodle](https://github.com/Frooodle) in [#5763](https://github.com/Stirling-Tools/Stirling-PDF/pull/5763)
- authclient by [@Frooodle](https://github.com/Frooodle) in [#5761](https://github.com/Stirling-Tools/Stirling-PDF/pull/5761)
- zipFix by [@Frooodle](https://github.com/Frooodle) in [#5762](https://github.com/Stirling-Tools/Stirling-PDF/pull/5762)
- Update de translation.toml by [@Hugomaulwurf76](https://github.com/Hugomaulwurf76) in [#5736](https://github.com/Stirling-Tools/Stirling-PDF/pull/5736)
- Translate various terms in Italian localization by [@albanobattistella](https://github.com/albanobattistella) in [#5749](https://github.com/Stirling-Tools/Stirling-PDF/pull/5749)
- Move Forms location by [@Frooodle](https://github.com/Frooodle) in [#5769](https://github.com/Stirling-Tools/Stirling-PDF/pull/5769)
- translations ai (please override as you see fit in new PRs these are placeholder) by [@Frooodle](https://github.com/Frooodle) in [#5770](https://github.com/Stirling-Tools/Stirling-PDF/pull/5770)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5675](https://github.com/Stirling-Tools/Stirling-PDF/pull/5675)

##### Other Changes

- build(tauri): enforce Java 17+ requirement in Windows jlink build script by [@Ludy87](https://github.com/Ludy87) in [#5684](https://github.com/Stirling-Tools/Stirling-PDF/pull/5684)

#### New Contributors

- [@Hugomaulwurf76](https://github.com/Hugomaulwurf76) made their first contribution in [#5736](https://github.com/Stirling-Tools/Stirling-PDF/pull/5736)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.1...v2.5.2>

---
##### [\`2.5.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.1)

Several bug fixes in this release

- Login issues showing "something went wrong" when language list = 1
- Forms not showing correctly
- Forms not working on desktop
- Desktop SSO redirect race condition issues
- 431 error for large endpoint for endpoints available

#### What's Changed

##### Minor Enhancements

- Fix SAML login "something went wrong" when language list = 1  by [@Frooodle](https://github.com/Frooodle) in [#5750](https://github.com/Stirling-Tools/Stirling-PDF/pull/5750)
- fix(forms): Update form field UI and behavior for better interactivity and alignment by [@balazs-szucs](https://github.com/balazs-szucs) in [#5747](https://github.com/Stirling-Tools/Stirling-PDF/pull/5747)
- fixes for desktop SSO by [@Frooodle](https://github.com/Frooodle) in [#5751](https://github.com/Stirling-Tools/Stirling-PDF/pull/5751)
- large query reduction by [@Frooodle](https://github.com/Frooodle) in [#5754](https://github.com/Stirling-Tools/Stirling-PDF/pull/5754)
- fix(form-fill): fix hardcoded response by [@balazs-szucs](https://github.com/balazs-szucs) in [#5755](https://github.com/Stirling-Tools/Stirling-PDF/pull/5755)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.0...v2.5.1>

---
##### [\`2.5.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.0)

This is a big update with lots of new functionality and changes like Form fill and redaction/annotation improvements! Also several changes around the login session expiry
Special thanks to [@balazs-szucs](https://github.com/balazs-szucs), who put a lot of work into this release!

New functionality:

- Huge manual redaction changes with colour selection and improved UI
- Add attachment support with sidebar button for viewing attachments etc (Seen in viewer mode)
- FormFill tool with context and UI components for PDF form filling
- Desktop now edits files that have been openned instead of creating new copies
- Extra JWT settings to customise expiry times for desktop and browser
- Add/remove link support

Extra improvements:

- Text selection improvements within the viewer with custom actions
- Improved link handling and link location
- EmbedPDF 2.6.0 upgrade for several bug fixes
- Multiple fixes with the viewer, its functionality, and its export
- PDF Text editor cache / JSON size issues
- Enhanced JWT handling and refreshing for better session management without forced re-logins
- Improved annotation UI
- Files correctly open in the viewer automatically if only 1 file is opened
- Improved tool disable menu to be able to disable all remaining tools and docs

#### What's Changed

##### Enhancements

- feat(redaction): improve manual redaction with color selection and updated UI elements by [@balazs-szucs](https://github.com/balazs-szucs) in [#5679](https://github.com/Stirling-Tools/Stirling-PDF/pull/5679)
- feat(text-selection): implement text selection enhancement for double and triple-click actions by [@balazs-szucs](https://github.com/balazs-szucs) in [#5712](https://github.com/Stirling-Tools/Stirling-PDF/pull/5712)
- feat(linklayer): improve link handling with pdf-lib integration and add link toolbar, add delete link functionality by [@balazs-szucs](https://github.com/balazs-szucs) in [#5715](https://github.com/Stirling-Tools/Stirling-PDF/pull/5715)
- feat(attachments): add attachment support with sidebar and API integration by [@balazs-szucs](https://github.com/balazs-szucs) in [#5673](https://github.com/Stirling-Tools/Stirling-PDF/pull/5673)
- feat(form-fill): FormFill tool with context and UI components for PDF form filling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5711](https://github.com/Stirling-Tools/Stirling-PDF/pull/5711)
- feat(frontend): Upgrade embedPDF to v2.6.0 and migrate to pdf-lib fork, fix attachment/bookmark panel by [@balazs-szucs](https://github.com/balazs-szucs) in [#5723](https://github.com/Stirling-Tools/Stirling-PDF/pull/5723)

##### Minor Enhancements

- Update translation by [@albanobattistella](https://github.com/albanobattistella) in [#5670](https://github.com/Stirling-Tools/Stirling-PDF/pull/5670)
- various  viewer pill fixes by [@reecebrowne](https://github.com/reecebrowne) in [#5714](https://github.com/Stirling-Tools/Stirling-PDF/pull/5714)
- Fix viewer export by [@reecebrowne](https://github.com/reecebrowne) in [#5713](https://github.com/Stirling-Tools/Stirling-PDF/pull/5713)
- fix tool disabling for docs and others by [@Frooodle](https://github.com/Frooodle) in [#5722](https://github.com/Stirling-Tools/Stirling-PDF/pull/5722)
- Preserve local paths for desktop saves by [@Frooodle](https://github.com/Frooodle) in [#5543](https://github.com/Stirling-Tools/Stirling-PDF/pull/5543)
- refactor(api): replace regex string literals with Pattern instances for improved performance and readability by [@balazs-szucs](https://github.com/balazs-szucs) in [#5680](https://github.com/Stirling-Tools/Stirling-PDF/pull/5680)
- refactor: fix homepage file upload path by [@Frooodle](https://github.com/Frooodle) in [#5738](https://github.com/Stirling-Tools/Stirling-PDF/pull/5738)
- PDF Text editor changes by [@Frooodle](https://github.com/Frooodle) in [#5726](https://github.com/Stirling-Tools/Stirling-PDF/pull/5726)
- fix\_env\_files\_for\_tauri by [@ConnorYoh](https://github.com/ConnorYoh) in [#5741](https://github.com/Stirling-Tools/Stirling-PDF/pull/5741)
- JWT enhancements for desktop by [@Frooodle](https://github.com/Frooodle) in [#5742](https://github.com/Stirling-Tools/Stirling-PDF/pull/5742)
- Chore/v2/improve annotation UI by [@reecebrowne](https://github.com/reecebrowne) in [#5724](https://github.com/Stirling-Tools/Stirling-PDF/pull/5724)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.6...v2.5.0>

---
##### [\`2.4.6\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.6)

Several bug fixes for the issues:

- License not always correctly loading due to cache issues
- public endpoints not always accessible when without JWT
- Language not always correctly taking the server's default
- Desktop issues for SAML SSO
- maxFileSize server setting not being handled correctly

As well as

- SSO cleanups
- Extra SSO logging for future issues
- markdown conversion now supports images

#### What's Changed

##### Breaking Changes

- fix(markdown): markdown conversion image handling and zip support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5677](https://github.com/Stirling-Tools/Stirling-PDF/pull/5677)

##### Enhancements

- Enhance SSO SAML in desktop app by [@jbrunton96](https://github.com/jbrunton96) in [#5705](https://github.com/Stirling-Tools/Stirling-PDF/pull/5705)

##### Minor Enhancements

- Fix maxFileSize environment variable support ([#5542](https://github.com/Stirling-Tools/Stirling-PDF/issues/5542)) by [@Eruis2579](https://github.com/Eruis2579) in [#5655](https://github.com/Stirling-Tools/Stirling-PDF/pull/5655)
- Bug fixing and debugs by [@Frooodle](https://github.com/Frooodle) in [#5704](https://github.com/Stirling-Tools/Stirling-PDF/pull/5704)
- fix(api): address potential backend resource leaks and improve frontend accessibility by [@balazs-szucs](https://github.com/balazs-szucs) in [#5678](https://github.com/Stirling-Tools/Stirling-PDF/pull/5678)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5668](https://github.com/Stirling-Tools/Stirling-PDF/pull/5668)
- build(deps): bump com.diffplug.spotless from 8.1.0 to 8.2.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5592](https://github.com/Stirling-Tools/Stirling-PDF/pull/5592)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.5...v2.4.6>

---
##### [\`2.4.5\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.5)

Desktop changes

- Windows desktop MSI to support headless installation with custom parameters to set up server URL and login mode, an example for this would be `msiexec /i "Stirling-PDF-windows-x86_64.msi
  " /qn STIRLING_SERVER_URL="http://192.168.1.53:2357/" STIRLING_LOCK_CONNECTION=1`

`STIRLING_SERVER_URL` auto sets the URL and `STIRLING_LOCK_CONNECTION=1` sets the connection mode to be ONLY self-host server, ensuring no mistaken connections to external servers. Please note this feature is currently in testing, if you have feedback or have tried it please let us know! (Even if it worked perfectly its good to know!)

- SSO UI changes
- support for login method restrictions in desktop
- remembers last entered selfhost URL for easy reconnection

General changes

- SSO functionality cleanups (a few more to come soon!)
- New strict mode for PDF/A conversion for issues were conversation isn't perfect
- redaction improvements

Bug fixes

- SSO auto login mode now working correctly

#### What's Changed

##### Enhancements

- feat:(pdfa-conversion) Implement Strict PDF/A Mode with Verification by [@balazs-szucs](https://github.com/balazs-szucs) in [#5663](https://github.com/Stirling-Tools/Stirling-PDF/pull/5663)
- feat(desktop): show and reuse last used server URL in Setup Wizard by [@Ludy87](https://github.com/Ludy87) in [#5659](https://github.com/Stirling-Tools/Stirling-PDF/pull/5659)
- feat(redaction): update to embedPDF v2.4.0 with unified redaction mode support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5652](https://github.com/Stirling-Tools/Stirling-PDF/pull/5652)

##### Minor Enhancements

- Saml fix by [@Frooodle](https://github.com/Frooodle) in [#5651](https://github.com/Stirling-Tools/Stirling-PDF/pull/5651)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5618](https://github.com/Stirling-Tools/Stirling-PDF/pull/5618)
- fix(frontend): improve synonym search by [@Ludy87](https://github.com/Ludy87) in [#5639](https://github.com/Stirling-Tools/Stirling-PDF/pull/5639)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5666](https://github.com/Stirling-Tools/Stirling-PDF/pull/5666)
- Headless windows installer by [@Frooodle](https://github.com/Frooodle) in [#5664](https://github.com/Stirling-Tools/Stirling-PDF/pull/5664)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5669](https://github.com/Stirling-Tools/Stirling-PDF/pull/5669)
- SSO styling changes  by [@Frooodle](https://github.com/Frooodle) in [#5671](https://github.com/Stirling-Tools/Stirling-PDF/pull/5671)

##### Docker Updates

- build(deps): bump alpine from 3.23.2 to 3.23.3 in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5590](https://github.com/Stirling-Tools/Stirling-PDF/pull/5590)
- chore(ci): update GitHub Actions to latest stable versions by [@Ludy87](https://github.com/Ludy87) in [#5629](https://github.com/Stirling-Tools/Stirling-PDF/pull/5629)

##### Translation Changes

- chore(ci): improve language TOML check output with fixer guidance by [@Ludy87](https://github.com/Ludy87) in [#5638](https://github.com/Stirling-Tools/Stirling-PDF/pull/5638)
- chore(ci): refine pre-commit workflows, add TOML sorting by [@Ludy87](https://github.com/Ludy87) in [#5648](https://github.com/Stirling-Tools/Stirling-PDF/pull/5648)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5667](https://github.com/Stirling-Tools/Stirling-PDF/pull/5667)

##### Development Tools

- chore(vscode): replace deprecated Copilot extension with Copilot Chat by [@Ludy87](https://github.com/Ludy87) in [#5662](https://github.com/Stirling-Tools/Stirling-PDF/pull/5662)

##### Other Changes

- build(deps): bump io.swagger.core.v3:swagger-core-jakarta from 2.2.41 to 2.2.42 by [@dependabot](https://github.com/dependabot)\[bot] in [#5549](https://github.com/Stirling-Tools/Stirling-PDF/pull/5549)
- build(deps): bump org.postgresql:postgresql from 42.7.8 to 42.7.9 by [@dependabot](https://github.com/dependabot)\[bot] in [#5554](https://github.com/Stirling-Tools/Stirling-PDF/pull/5554)
- fix(build): define repositories to resolve test classpath dependencies by [@Ludy87](https://github.com/Ludy87) in [#5650](https://github.com/Stirling-Tools/Stirling-PDF/pull/5650)
- tauri comments by [@Frooodle](https://github.com/Frooodle) in [#5634](https://github.com/Stirling-Tools/Stirling-PDF/pull/5634)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.4...v2.4.5>

---
##### [\`2.4.4\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.4)

Quick fix for page editor bug causes multi-page selection issues

This release also contains

- Italian translations
- Bates stamping functionality to add page numbers
- Extract bookmarks API fix
- Diagnostics command in CLI for easy error reporting (grabs logs into a zip on request for you to view)

#### What's Changed

##### Enhancements

- feat(i18n): add missing compare placeholder and stamp label translations by [@Ludy87](https://github.com/Ludy87) in [#5636](https://github.com/Stirling-Tools/Stirling-PDF/pull/5636)

##### Minor Enhancements

- update to add optional Zero Padding to page numbers (Bates Stamping).… by [@mrober01](https://github.com/mrober01) in [#5612](https://github.com/Stirling-Tools/Stirling-PDF/pull/5612)
- Fix ClassCastException in extractBookmarks endpoint ([#5578](https://github.com/Stirling-Tools/Stirling-PDF/issues/5578)) by [@Eruis2579](https://github.com/Eruis2579) in [#5604](https://github.com/Stirling-Tools/Stirling-PDF/pull/5604)
- Bug/page editor additional fixes by [@reecebrowne](https://github.com/reecebrowne) in [#5660](https://github.com/Stirling-Tools/Stirling-PDF/pull/5660)
- Updated Italian translation by [@albanobattistella](https://github.com/albanobattistella) in [#5637](https://github.com/Stirling-Tools/Stirling-PDF/pull/5637)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5642](https://github.com/Stirling-Tools/Stirling-PDF/pull/5642)

##### Other Changes

- diagnostic script by [@Frooodle](https://github.com/Frooodle) in [#5646](https://github.com/Stirling-Tools/Stirling-PDF/pull/5646)

#### New Contributors

- [@mrober01](https://github.com/mrober01) made their first contribution in [#5612](https://github.com/Stirling-Tools/Stirling-PDF/pull/5612)
- [@Eruis2579](https://github.com/Eruis2579) made their first contribution in [#5604](https://github.com/Stirling-Tools/Stirling-PDF/pull/5604)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.3...v2.4.4>

---
##### [\`2.4.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.3)

Big desktop release today, full of fixes as well as other changes!

- Correctly show desktop and server versioning separately
- Support for watched folders to be recursive and multiple directories to be defined
- Desktop login expiry fix
- Desktop self-host connection improvements (self-sign fixes and others)
- Page editor performance and UI improvements
- frontend error screen appearing during SSO fix
- Desktop CORS fixes

#### What's Changed

##### Enhancements

- feat(settings): display frontend/backend versions and warn on client-server mismatch by [@Ludy87](https://github.com/Ludy87) in [#5571](https://github.com/Stirling-Tools/Stirling-PDF/pull/5571)
- Support multiple pipeline watch directories and configurable pipeline base path by [@Frooodle](https://github.com/Frooodle) in [#5545](https://github.com/Stirling-Tools/Stirling-PDF/pull/5545)

##### Minor Enhancements

- Stop type checking TypeScript files that won't be run by [@jbrunton96](https://github.com/jbrunton96) in [#5607](https://github.com/Stirling-Tools/Stirling-PDF/pull/5607)
- Fixed missing AuthnRequest bug by [@DarioGii](https://github.com/DarioGii) in [#5606](https://github.com/Stirling-Tools/Stirling-PDF/pull/5606)
- Update links to Docs by [@numanair](https://github.com/numanair) in [#5611](https://github.com/Stirling-Tools/Stirling-PDF/pull/5611)
- fix(frontend): prevent hydration errors in admin security form and improve autofill support by [@Ludy87](https://github.com/Ludy87) in [#5613](https://github.com/Stirling-Tools/Stirling-PDF/pull/5613)
- fix(auth): align token refresh handling with updated backend response by [@Ludy87](https://github.com/Ludy87) in [#5609](https://github.com/Stirling-Tools/Stirling-PDF/pull/5609)
- always allow tauri cors by [@Frooodle](https://github.com/Frooodle) in [#5616](https://github.com/Stirling-Tools/Stirling-PDF/pull/5616)
- Bug/pageeditor virtualisation by [@reecebrowne](https://github.com/reecebrowne) in [#5614](https://github.com/Stirling-Tools/Stirling-PDF/pull/5614)
- Stop attempting to refresh Spring tokens in desktop by [@Frooodle](https://github.com/Frooodle) in [#5610](https://github.com/Stirling-Tools/Stirling-PDF/pull/5610)

##### Other Changes

- Update Python dependencies in requirements files by [@Ludy87](https://github.com/Ludy87) in [#5627](https://github.com/Stirling-Tools/Stirling-PDF/pull/5627)
- Pin GitHub Actions and add runner hardening by [@Ludy87](https://github.com/Ludy87) in [#5628](https://github.com/Stirling-Tools/Stirling-PDF/pull/5628)

#### New Contributors

- [@numanair](https://github.com/numanair) made their first contribution in [#5611](https://github.com/Stirling-Tools/Stirling-PDF/pull/5611)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.2...v2.4.3>

---
##### [\`2.4.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.2)

This is a quick update including

- Fixes for Audit display failing under certain scenarios
- Fix for tools not being correctly disabled via disable-endpoints settings
- Text editor font rendering fixes
- New Variables for Stamp PDF feature!

#### What's Changed

##### Enhancements

- feat(stamp): add dynamic variables and templates for stamp text customization by [@balazs-szucs](https://github.com/balazs-szucs) in [#5546](https://github.com/Stirling-Tools/Stirling-PDF/pull/5546)

##### Minor Enhancements

- Fix tool disabling by [@Frooodle](https://github.com/Frooodle) in [#5585](https://github.com/Stirling-Tools/Stirling-PDF/pull/5585)
- Fix Audit & Usage Analytics Sections by [@DarioGii](https://github.com/DarioGii) in [#5586](https://github.com/Stirling-Tools/Stirling-PDF/pull/5586)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5538](https://github.com/Stirling-Tools/Stirling-PDF/pull/5538)

##### Other Changes

- fix: PDF Text Editor file open by [@bittoby](https://github.com/bittoby) in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

#### New Contributors

- [@bittoby](https://github.com/bittoby) made their first contribution in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.1...v2.4.2>

<!-- Release notes generated using configuration in .github/release.yml at v2.4.2 -->

#### What's Changed

##### Enhancements

- feat(stamp): add dynamic variables and templates for stamp text customization by [@balazs-szucs](https://github.com/balazs-szucs) in [#5546](https://github.com/Stirling-Tools/Stirling-PDF/pull/5546)

##### Minor Enhancements

- Fix tool disabling by [@Frooodle](https://github.com/Frooodle) in [#5585](https://github.com/Stirling-Tools/Stirling-PDF/pull/5585)
- Fix Audit & Usage Analytics Sections by [@DarioGii](https://github.com/DarioGii) in [#5586](https://github.com/Stirling-Tools/Stirling-PDF/pull/5586)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5538](https://github.com/Stirling-Tools/Stirling-PDF/pull/5538)

##### Other Changes

- fix: PDF Text Editor file open by [@bittoby](https://github.com/bittoby) in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

#### New Contributors

- [@bittoby](https://github.com/bittoby) made their first contribution in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.1...v2.4.2>

---
##### [\`2.4.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.1)

Lots of bug fixes today!
Fix for HTTPS connection for desktop mode
Xframe option now in settings.yml and options menu for iframe support
Various other bug fixes and dependencies updates!
Mac desktop not starting correctly

#### What's Changed

##### Enhancements

- deps(frontend, tauri): update Tauri, Rust crates, and frontend dependencies by [@Ludy87](https://github.com/Ludy87) in [#5569](https://github.com/Stirling-Tools/Stirling-PDF/pull/5569)

##### Minor Enhancements

- pipeline fixes for naming issues  by [@Frooodle](https://github.com/Frooodle) in [#5570](https://github.com/Stirling-Tools/Stirling-PDF/pull/5570)
- xframe fix new by [@Frooodle](https://github.com/Frooodle) in [#5580](https://github.com/Stirling-Tools/Stirling-PDF/pull/5580)
- tool tags by [@Frooodle](https://github.com/Frooodle) in [#5568](https://github.com/Stirling-Tools/Stirling-PDF/pull/5568)
- deps(embedPDF): Bump codebase to embedPDF v2.3.0 and adjust codebase for new features by [@balazs-szucs](https://github.com/balazs-szucs) in [#5567](https://github.com/Stirling-Tools/Stirling-PDF/pull/5567)
- possible login fixes by [@Frooodle](https://github.com/Frooodle) in [#5444](https://github.com/Stirling-Tools/Stirling-PDF/pull/5444)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5581](https://github.com/Stirling-Tools/Stirling-PDF/pull/5581)

##### Docker Updates

- chore(ci): remove automated version sync job from build workflow by [@Ludy87](https://github.com/Ludy87) in [#5547](https://github.com/Stirling-Tools/Stirling-PDF/pull/5547)

##### Other Changes

- build(deps): bump pypdf from 6.6.0 to 6.6.2 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5577](https://github.com/Stirling-Tools/Stirling-PDF/pull/5577)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.0...v2.4.1>

---
##### [\`2.4.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.0)

Lots of new features in this release

- database backup management (Only for internal H2 database users)
- Full 2FA support with One-time-password auth code app support!
- Get info supporting better compliance verification
- PDF/X conversions
- automation tool now export into folder scan JSONs for folder automation

Bug fixes for

- Sign tool
- SSO user creation
- addStamp not handling timestamps

Thanks as always for all the fixes and work everyone has been doing! such as [@balazs-szucs](https://github.com/balazs-szucs) or the new bug fix from [@Joey4](https://github.com/Joey4) !
Special thanks to [@Ludy87](https://github.com/Ludy87) for introducing the awesome 2FA feature!

#### What's Changed

##### Enhancements

- feat(admin): add H2 database backup & restore management to admin UI by [@Ludy87](https://github.com/Ludy87) in [#5528](https://github.com/Stirling-Tools/Stirling-PDF/pull/5528)
- feat(frontend): enhance icon detection and update config navigation icon by [@Ludy87](https://github.com/Ludy87) in [#5524](https://github.com/Stirling-Tools/Stirling-PDF/pull/5524)
- feat(security): add TOTP-based multi-factor authentication with backend and UI support by [@Ludy87](https://github.com/Ludy87) in [#5417](https://github.com/Stirling-Tools/Stirling-PDF/pull/5417)
- feat(compliance): implement compliance verfication for get info on PDF by [@balazs-szucs](https://github.com/balazs-szucs) in [#5435](https://github.com/Stirling-Tools/Stirling-PDF/pull/5435)

##### Minor Enhancements

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5530](https://github.com/Stirling-Tools/Stirling-PDF/pull/5530)
- fix(annotations): fix error 300 on sign frontend by [@balazs-szucs](https://github.com/balazs-szucs) in [#5536](https://github.com/Stirling-Tools/Stirling-PDF/pull/5536)
- Fix: Whitelist health endpoints in Security and Enterprise Filter + fix keep original commit by [@Frooodle](https://github.com/Frooodle) in [#5494](https://github.com/Stirling-Tools/Stirling-PDF/pull/5494)
- API cleanups by [@Frooodle](https://github.com/Frooodle) in [#5537](https://github.com/Stirling-Tools/Stirling-PDF/pull/5537)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5490](https://github.com/Stirling-Tools/Stirling-PDF/pull/5490)
- refactor(security): clean up SSO handling, harden URL parsing, and bump dependencies by [@Ludy87](https://github.com/Ludy87) in [#5523](https://github.com/Stirling-Tools/Stirling-PDF/pull/5523)
- fix(common): 🛡️CWE-681 & CWE-197 eliminate tainted numeric casts in size parsing by using BigDecimal with range guards by [@Ludy87](https://github.com/Ludy87) in [#5521](https://github.com/Stirling-Tools/Stirling-PDF/pull/5521)
- build(deps): bump nginx from `c083c37` to `b0f7830` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5500](https://github.com/Stirling-Tools/Stirling-PDF/pull/5500)
- build(deps): bump node from `f4769ca` to `e80397b` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5498](https://github.com/Stirling-Tools/Stirling-PDF/pull/5498)
- Fix V2 SSO user creation by [@Frooodle](https://github.com/Frooodle) in [#5079](https://github.com/Stirling-Tools/Stirling-PDF/pull/5079)
- removal of old java desktop + workspace change in tauri by [@Frooodle](https://github.com/Frooodle) in [#5459](https://github.com/Stirling-Tools/Stirling-PDF/pull/5459)
- Date and time placeholders in addTextStamp are not working by [@Joey4](https://github.com/Joey4) in [#5446](https://github.com/Stirling-Tools/Stirling-PDF/pull/5446)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5539](https://github.com/Stirling-Tools/Stirling-PDF/pull/5539)
- \[V2] feat(convert): add PDF/X export option by [@balazs-szucs](https://github.com/balazs-szucs) in [#5285](https://github.com/Stirling-Tools/Stirling-PDF/pull/5285)
- V2 Show enterprise demo messages for audit and usage by [@Frooodle](https://github.com/Frooodle) in [#5226](https://github.com/Stirling-Tools/Stirling-PDF/pull/5226)
- Export folder scanning by [@Frooodle](https://github.com/Frooodle) in [#5544](https://github.com/Stirling-Tools/Stirling-PDF/pull/5544)
- translations by [@Frooodle](https://github.com/Frooodle) in [#5541](https://github.com/Stirling-Tools/Stirling-PDF/pull/5541)

##### Docker Updates

- Add sync-versions job to GitHub Actions workflow by [@Ludy87](https://github.com/Ludy87) in [#5228](https://github.com/Stirling-Tools/Stirling-PDF/pull/5228)
- build(deps): bump debian from `f668110` to `ed542b2` in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5495](https://github.com/Stirling-Tools/Stirling-PDF/pull/5495)

##### Other Changes

- build(deps): bump logback from 1.5.23 to 1.5.24 by [@dependabot](https://github.com/dependabot)\[bot] in [#5468](https://github.com/Stirling-Tools/Stirling-PDF/pull/5468)
- build(deps): bump io.micrometer:micrometer-core from 1.16.1 to 1.16.2 by [@dependabot](https://github.com/dependabot)\[bot] in [#5466](https://github.com/Stirling-Tools/Stirling-PDF/pull/5466)

#### New Contributors

- [@Joey4](https://github.com/Joey4) made their first contribution in [#5446](https://github.com/Stirling-Tools/Stirling-PDF/pull/5446)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.3.1...v2.4.0>

---
##### [\`2.3.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.3.1)

Several bug fixes , including

- Scroll bar not showing correctly in settings menu
- Automate menus showing options correctly

and several other change,s such as SVG to PDF conversion and performance changes throughout app

#### What's Changed

##### Enhancements

- feat(conversion): add SVG to PDF conversion functionality by [@balazs-szucs](https://github.com/balazs-szucs) in [#5431](https://github.com/Stirling-Tools/Stirling-PDF/pull/5431)
- feat(pipeline): improve file processing with resource management and temp file handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5488](https://github.com/Stirling-Tools/Stirling-PDF/pull/5488)
- feat(admin): add tessdata language management for OCR and download support by [@Ludy87](https://github.com/Ludy87) in [#5519](https://github.com/Stirling-Tools/Stirling-PDF/pull/5519)

##### Minor Enhancements

- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5489](https://github.com/Stirling-Tools/Stirling-PDF/pull/5489)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5484](https://github.com/Stirling-Tools/Stirling-PDF/pull/5484)
- \[V2] fix(automation): enhance parameter handling and default values across operations, fix error in ManyToOne tools by [@balazs-szucs](https://github.com/balazs-szucs) in [#5123](https://github.com/Stirling-Tools/Stirling-PDF/pull/5123)
- scrollbar fixes by [@Frooodle](https://github.com/Frooodle) in [#5529](https://github.com/Stirling-Tools/Stirling-PDF/pull/5529)
- Fix hook ordering for endpoint name resolution by [@Frooodle](https://github.com/Frooodle) in [#5517](https://github.com/Stirling-Tools/Stirling-PDF/pull/5517)
- fix(automation): add zIndex and withinPortal props to dropdown components for improved UI consistency by [@balazs-szucs](https://github.com/balazs-szucs) in [#5527](https://github.com/Stirling-Tools/Stirling-PDF/pull/5527)
- refactor: remove legacy Thymeleaf web UI controllers and templates by [@Ludy87](https://github.com/Ludy87) in [#5406](https://github.com/Stirling-Tools/Stirling-PDF/pull/5406)
- fix(pipeline): avoid bad multipart by letting RestTemplate set boundary by [@Ludy87](https://github.com/Ludy87) in [#5522](https://github.com/Stirling-Tools/Stirling-PDF/pull/5522)
- chore(i18n): update and expand Dutch (nl-NL) translations by [@Stephan-P](https://github.com/Stephan-P) in [#5355](https://github.com/Stirling-Tools/Stirling-PDF/pull/5355)
- Update Italian translations by [@albanobattistella](https://github.com/albanobattistella) in [#5508](https://github.com/Stirling-Tools/Stirling-PDF/pull/5508)

##### Docker Updates

- chore(ci): enable Gradle dependency caching across GitHub workflows by [@Ludy87](https://github.com/Ludy87) in [#5400](https://github.com/Stirling-Tools/Stirling-PDF/pull/5400)
- build(deps): bump actions/checkout from 4.2.2 to 6.0.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5465](https://github.com/Stirling-Tools/Stirling-PDF/pull/5465)

##### Development Tools

- build(deps-dev): bump stylelint-config-standard from 39.0.1 to 40.0.0 in /devTools by [@dependabot](https://github.com/dependabot)\[bot] in [#5504](https://github.com/Stirling-Tools/Stirling-PDF/pull/5504)

##### Other Changes

- build(deps): bump actions/download-artifact from 6.0.0 to 7.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5503](https://github.com/Stirling-Tools/Stirling-PDF/pull/5503)
- build(deps): bump reportlab from 4.4.5 to 4.4.9 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5505](https://github.com/Stirling-Tools/Stirling-PDF/pull/5505)

---
##### [\`2.3.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.3.0)

Several important bug fixes in this release related to

- File conversion threading
- Non-roman alphabet files processing incorrectly
- Desktop app bugs (Lots more fixes coming!)
- And many others!

We also have some really cool features introduced such as

- Telegram bot (In Connections menu or settings.yml)
- PDF to EPUB and AZW3
- MSG support

#### What's Changed

##### Enhancements

- feat(build): enhance JaCoCo reporting with coverage summary and enforce thresholds by [@Ludy87](https://github.com/Ludy87) in [#5352](https://github.com/Stirling-Tools/Stirling-PDF/pull/5352)
- feat(ui): prevent self-modification in People management and highlight current user by [@Ludy87](https://github.com/Ludy87) in [#5441](https://github.com/Stirling-Tools/Stirling-PDF/pull/5441)
- feat(conversion): refactor EML parser to use Simple Java Mail library and add MSG support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5427](https://github.com/Stirling-Tools/Stirling-PDF/pull/5427)
- feat(conversion): add PDF to EPUB/AZW3 conversion support and settings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5434](https://github.com/Stirling-Tools/Stirling-PDF/pull/5434)

##### Minor Enhancements

- build(ci): pin base container images, switch npm install to npm ci, and harden EML error handling by [@Ludy87](https://github.com/Ludy87) in [#5353](https://github.com/Stirling-Tools/Stirling-PDF/pull/5353)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5426](https://github.com/Stirling-Tools/Stirling-PDF/pull/5426)
- Updated ga-IE translations and added keys to ignore list by [@aindriu80](https://github.com/aindriu80) in [#5178](https://github.com/Stirling-Tools/Stirling-PDF/pull/5178)
- fix(api): return JSON responses for admin settings + API key endpoints to prevent Tauri client parse errors by [@Ludy87](https://github.com/Ludy87) in [#5437](https://github.com/Stirling-Tools/Stirling-PDF/pull/5437)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5363](https://github.com/Stirling-Tools/Stirling-PDF/pull/5363)
- build(deps): bump node from 20-alpine to 25-alpine in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5311](https://github.com/Stirling-Tools/Stirling-PDF/pull/5311)
- build(deps): bump nginx from `8491795` to `c083c37` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5448](https://github.com/Stirling-Tools/Stirling-PDF/pull/5448)
- build(deps): bump globals from 16.5.0 to 17.0.0 in /frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5413](https://github.com/Stirling-Tools/Stirling-PDF/pull/5413)
- Add Telegram bot integration for pipeline processing by [@Ludy87](https://github.com/Ludy87) in [#5185](https://github.com/Stirling-Tools…
renovate bot added a commit to sdwilsh/ansible-playbooks that referenced this pull request Mar 21, 2026
… docker tag to v2

##### [\`2.7.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.3)

- New PDF read aloud feature in viewer mode to "speak" the PDF to you, will be improved more going forwards!
- Improved annotation handling in annotation UI
- Mac printing is finally working on desktop app!
- Several general bug fixes such as Fix non-ASCII characters in headers being rejected
- Fix bug for HTTP2 support

In this release, we have also removed the remove-image tool temporarily, along with some changes to folder watching. If you use these, we recommend holding off on this release till our 2.8.0 release, planned for release in the next few days

#### What's Changed

##### Enhancements

- feat(http2): add jetty-alpn-java-server dependency for HTTP/2 support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5945](https://github.com/Stirling-Tools/Stirling-PDF/pull/5945)

##### Minor Enhancements

- Improve annotations by [@EthanHealy01](https://github.com/EthanHealy01) in [#5919](https://github.com/Stirling-Tools/Stirling-PDF/pull/5919)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5798](https://github.com/Stirling-Tools/Stirling-PDF/pull/5798)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5930](https://github.com/Stirling-Tools/Stirling-PDF/pull/5930)
- Fix printing on Mac desktop by [@jbrunton96](https://github.com/jbrunton96) in [#5920](https://github.com/Stirling-Tools/Stirling-PDF/pull/5920)
- Delete code from invalid license by [@Frooodle](https://github.com/Frooodle) in [#5947](https://github.com/Stirling-Tools/Stirling-PDF/pull/5947)
- fix jumping cursor bug by [@rafaroseira](https://github.com/rafaroseira) in [#5937](https://github.com/Stirling-Tools/Stirling-PDF/pull/5937)
- Fix `any` type usage in the `saas/` folder by [@jbrunton96](https://github.com/jbrunton96) in [#5934](https://github.com/Stirling-Tools/Stirling-PDF/pull/5934)
- Unify creditCosts.ts files by [@jbrunton96](https://github.com/jbrunton96) in [#5952](https://github.com/Stirling-Tools/Stirling-PDF/pull/5952)
- Hotfix-cant-run-tools-when-no-credits by [@ConnorYoh](https://github.com/ConnorYoh) in [#5955](https://github.com/Stirling-Tools/Stirling-PDF/pull/5955)
- Fix non-ASCII characters in headers being rejected ([#5377](https://github.com/Stirling-Tools/Stirling-PDF/issues/5377)) by [@Eruis2579](https://github.com/Eruis2579) in [#5699](https://github.com/Stirling-Tools/Stirling-PDF/pull/5699)
- speaking! by [@Frooodle](https://github.com/Frooodle) in [#5925](https://github.com/Stirling-Tools/Stirling-PDF/pull/5925)

##### Docker Updates

- build(deps): bump step-security/harden-runner from 2.14.0 to 2.15.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5896](https://github.com/Stirling-Tools/Stirling-PDF/pull/5896)
- build(deps): bump crazy-max/ghaction-github-runtime from 3.1.0 to 4.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5890](https://github.com/Stirling-Tools/Stirling-PDF/pull/5890)
- build(deps): bump docker/metadata-action from 5.10.0 to 6.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5889](https://github.com/Stirling-Tools/Stirling-PDF/pull/5889)
- build(deps): bump actions/setup-python from 6.1.0 to 6.2.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5886](https://github.com/Stirling-Tools/Stirling-PDF/pull/5886)
- build(deps): bump actions/cache from 4.3.0 to 5.0.3 by [@dependabot](https://github.com/dependabot)\[bot] in [#5940](https://github.com/Stirling-Tools/Stirling-PDF/pull/5940)
- build(deps): bump dorny/paths-filter from 3.0.2 to 4.0.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5943](https://github.com/Stirling-Tools/Stirling-PDF/pull/5943)
- build(deps): bump actions/upload-artifact from 6.0.0 to 7.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5939](https://github.com/Stirling-Tools/Stirling-PDF/pull/5939)
- Fix Docker builds on Debian by [@unlair](https://github.com/unlair) in [#5936](https://github.com/Stirling-Tools/Stirling-PDF/pull/5936)

##### Other Changes

- build(deps): bump actions/download-artifact from 7.0.0 to 8.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5887](https://github.com/Stirling-Tools/Stirling-PDF/pull/5887)
- Add SaaS AI engine by [@jbrunton96](https://github.com/jbrunton96) in [#5907](https://github.com/Stirling-Tools/Stirling-PDF/pull/5907)
- build(deps): bump srvaroa/labeler from 1.13.0 to 1.14.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5942](https://github.com/Stirling-Tools/Stirling-PDF/pull/5942)
- build(deps): bump github/codeql-action from 4.32.4 to 4.32.6 by [@dependabot](https://github.com/dependabot)\[bot] in [#5941](https://github.com/Stirling-Tools/Stirling-PDF/pull/5941)

#### New Contributors

- [@rafaroseira](https://github.com/rafaroseira) made their first contribution in [#5937](https://github.com/Stirling-Tools/Stirling-PDF/pull/5937)
- [@unlair](https://github.com/unlair) made their first contribution in [#5936](https://github.com/Stirling-Tools/Stirling-PDF/pull/5936)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.7.2...v2.7.3>

---
##### [\`2.7.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.2)

Had a bug where self-hosted connections via desktop would stop working, thinking they were connecting to a non selfhost instance

#### What's Changed

##### Minor Enhancements

- Check if saas before blocking credit insufficiencies by [@ConnorYoh](https://github.com/ConnorYoh) in [#5929](https://github.com/Stirling-Tools/Stirling-PDF/pull/5929)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.7.1...v2.7.2>

<!-- Release notes generated using configuration in .github/release.yml at v2.7.2 -->

#### What's Changed

##### Minor Enhancements

- Check if saas before blocking credit insufficiencies by [@ConnorYoh](https://github.com/ConnorYoh) in [#5929](https://github.com/Stirling-Tools/Stirling-PDF/pull/5929)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.7.1...v2.7.2>

---
##### [\`2.7.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.1)

Bug fixes for various issues such as:

- Desktop conversions mistakenly doing a 'save' to 'save as'
- Desktop 'open with PDF' having invalid description on windows
- Posthog still creating a cookie even when its not used (still a  fully unused cookie tho)
- Desktop not falling back to local connection if on selfhosted and server down
- Rotate on large docs not always working correctly

#### What's Changed

##### Minor Enhancements

- Chore/v2/transforms as root by [@reecebrowne](https://github.com/reecebrowne) in [#5868](https://github.com/Stirling-Tools/Stirling-PDF/pull/5868)
- Limit PostHog cookie to Stirling PDF's subdomain only by [@bban160](https://github.com/bban160) in [#5882](https://github.com/Stirling-Tools/Stirling-PDF/pull/5882)
- Posthog-fixes by [@ConnorYoh](https://github.com/ConnorYoh) in [#5901](https://github.com/Stirling-Tools/Stirling-PDF/pull/5901)
- Get rid of bad description for file association on Windows by [@jbrunton96](https://github.com/jbrunton96) in [#5905](https://github.com/Stirling-Tools/Stirling-PDF/pull/5905)
- Desktop: Fallback to local backend if self-hosted server is offline by [@ConnorYoh](https://github.com/ConnorYoh) in [#5880](https://github.com/Stirling-Tools/Stirling-PDF/pull/5880)
- Add SaaS frontend code by [@jbrunton96](https://github.com/jbrunton96) in [#5879](https://github.com/Stirling-Tools/Stirling-PDF/pull/5879)
- Manage state of price-lookup calls by [@ConnorYoh](https://github.com/ConnorYoh) in [#5915](https://github.com/Stirling-Tools/Stirling-PDF/pull/5915)
- Add system for managing env vars by [@jbrunton96](https://github.com/jbrunton96) in [#5902](https://github.com/Stirling-Tools/Stirling-PDF/pull/5902)
- Fix rotate failing on large documents by [@reecebrowne](https://github.com/reecebrowne) in [#5917](https://github.com/Stirling-Tools/Stirling-PDF/pull/5917)
- Cleanup-conversion-translations by [@ConnorYoh](https://github.com/ConnorYoh) in [#5906](https://github.com/Stirling-Tools/Stirling-PDF/pull/5906)
- Update Italian translations by [@albanobattistella](https://github.com/albanobattistella) in [#5884](https://github.com/Stirling-Tools/Stirling-PDF/pull/5884)

##### Development Tools

- Move AI advice to AGENTS.md and add symlink from CLAUDE.md by [@jbrunton96](https://github.com/jbrunton96) in [#5914](https://github.com/Stirling-Tools/Stirling-PDF/pull/5914)

#### New Contributors

- [@bban160](https://github.com/bban160) made their first contribution in [#5882](https://github.com/Stirling-Tools/Stirling-PDF/pull/5882)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.7.0...v2.7.1>

---
##### [\`2.7.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.0)

Lots of changes in this release yet again!

App:

- option to hide google drive and mobile upload when disabled in 'my files' view
- New search bar to search settings menu easily
- Auditing has improved, new filehash/author options are supported with better reporting overall (We recommend enterprise users to backup their Stirling database before updating to be safe, although expect no issues)

Desktop:

- Desktop app correctly returns to its previous window state and location as its previous launch
- Desktop app supports OS notifications if it finishes working on tasks whilst minimised

Bugs fixed:

- Pipeline erroring in merge tool and others based on parameters
- Certification signature stamps not showing correctly in the viewer
- English was being enabled even when it was disabled in settings

#### What's Changed

##### Enhancements

- settings menu reworks by [@Frooodle](https://github.com/Frooodle) in [#5864](https://github.com/Stirling-Tools/Stirling-PDF/pull/5864)

##### Minor Enhancements

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5775](https://github.com/Stirling-Tools/Stirling-PDF/pull/5775)
- Persist Tauri window state between launches by [@Frooodle](https://github.com/Frooodle) in [#5871](https://github.com/Stirling-Tools/Stirling-PDF/pull/5871)
- tauri notifications by [@Frooodle](https://github.com/Frooodle) in [#5875](https://github.com/Stirling-Tools/Stirling-PDF/pull/5875)
- Audit fixes and improvements by [@Frooodle](https://github.com/Frooodle) in [#5835](https://github.com/Stirling-Tools/Stirling-PDF/pull/5835)
- fix: merge pdf pipeline validation by [@RenzoMXD](https://github.com/RenzoMXD) in [#5799](https://github.com/Stirling-Tools/Stirling-PDF/pull/5799)
- Fix signatures not showing by [@ConnorYoh](https://github.com/ConnorYoh) in [#5872](https://github.com/Stirling-Tools/Stirling-PDF/pull/5872)
- Add the production billing portal link for static plan page by [@ConnorYoh](https://github.com/ConnorYoh) in [#5860](https://github.com/Stirling-Tools/Stirling-PDF/pull/5860)
- option to hide google drive and add settings by [@Frooodle](https://github.com/Frooodle) in [#5863](https://github.com/Stirling-Tools/Stirling-PDF/pull/5863)
- stop enabling english by [@Frooodle](https://github.com/Frooodle) in [#5874](https://github.com/Stirling-Tools/Stirling-PDF/pull/5874)
- Add searchable settings selector to AppConfigModal and improve nav behavior by [@Frooodle](https://github.com/Frooodle) in [#5873](https://github.com/Stirling-Tools/Stirling-PDF/pull/5873)

##### Docker Updates

- build(deps): bump actions/setup-node from 4.4.0 to 6.2.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5691](https://github.com/Stirling-Tools/Stirling-PDF/pull/5691)

##### Other Changes

- Don't build mac if you don't have the secrets by [@ConnorYoh](https://github.com/ConnorYoh) in [#5861](https://github.com/Stirling-Tools/Stirling-PDF/pull/5861)
- build(deps): bump digicert/ssm-code-signing from 1.2.0 to 1.2.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5692](https://github.com/Stirling-Tools/Stirling-PDF/pull/5692)
- build(deps): bump pypdf from 6.7.4 to 6.7.5 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5853](https://github.com/Stirling-Tools/Stirling-PDF/pull/5853)
- translations and version bump by [@Frooodle](https://github.com/Frooodle) in [#5878](https://github.com/Stirling-Tools/Stirling-PDF/pull/5878)

#### New Contributors

- [@RenzoMXD](https://github.com/RenzoMXD) made their first contribution in [#5799](https://github.com/Stirling-Tools/Stirling-PDF/pull/5799)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.6.0...v2.7.0>

---
##### [\`2.6.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.6.0)

In this update, we have drastically improved Stirling PDFs memory usage and startup performance in our testing you should see around a 30% reduction in both idle usage and startup speed
We have also dramatically reduced the filesize of the docker by 30-40%

Breaking updates:
No longer supporting JDK 17, we have moved to JDK 21-25 and are recommending all jar installs to upgrade to JDK 25 for best performance

Other updates

- Desktop now supports running non installed tools by optionally connecting to Stirling cloud server IF a user chooses to and is already running via login to cloud
- Several dependencies have been updated
- Security patches

Bug fixes

- Health check failing under certain auth scenarios
- Crop not working for desktop

#### What's Changed

##### Enhancements

- feat(docker): update base images to Java 25, Spring 4, Jackson 3, Gradle 9 and optimize JVM options (Project Lilliput) by [@balazs-szucs](https://github.com/balazs-szucs) in [#5725](https://github.com/Stirling-Tools/Stirling-PDF/pull/5725)
- feat(annotation): add moveAnnotation API for efficient repositioning of annotations, and bump embed to 2.7.0 by [@balazs-szucs](https://github.com/balazs-szucs) in [#5809](https://github.com/Stirling-Tools/Stirling-PDF/pull/5809)
- feat(conversion): switch PDF input engine to pdftohtml for improved performance and reduced dependencies by [@balazs-szucs](https://github.com/balazs-szucs) in [#5820](https://github.com/Stirling-Tools/Stirling-PDF/pull/5820)
- feat(aot): add aot-diagnostics.sh for AOT cache diagnostics and validation by [@balazs-szucs](https://github.com/balazs-szucs) in [#5848](https://github.com/Stirling-Tools/Stirling-PDF/pull/5848)

##### Minor Enhancements

- Update frontend minor package versions by [@jbrunton96](https://github.com/jbrunton96) in [#5787](https://github.com/Stirling-Tools/Stirling-PDF/pull/5787)
- Sync up Tauri versions by [@jbrunton96](https://github.com/jbrunton96) in [#5789](https://github.com/Stirling-Tools/Stirling-PDF/pull/5789)
- zip and response issues by [@Frooodle](https://github.com/Frooodle) in [#5786](https://github.com/Stirling-Tools/Stirling-PDF/pull/5786)
- Change to use dpdm for circular import scanning by [@jbrunton96](https://github.com/jbrunton96) in [#5788](https://github.com/Stirling-Tools/Stirling-PDF/pull/5788)
- Cachefixing test by [@Frooodle](https://github.com/Frooodle) in [#5793](https://github.com/Stirling-Tools/Stirling-PDF/pull/5793)
- Desktop connection SaaS: config, billing, team support by [@ConnorYoh](https://github.com/ConnorYoh) in [#5768](https://github.com/Stirling-Tools/Stirling-PDF/pull/5768)
- Switch to use ESLint 10 by [@jbrunton96](https://github.com/jbrunton96) in [#5794](https://github.com/Stirling-Tools/Stirling-PDF/pull/5794)
- cleanups by [@Frooodle](https://github.com/Frooodle) in [#5795](https://github.com/Stirling-Tools/Stirling-PDF/pull/5795)
- DocumentBuilderFactory limiting by [@Frooodle](https://github.com/Frooodle) in [#5797](https://github.com/Stirling-Tools/Stirling-PDF/pull/5797)
- lint by [@reecebrowne](https://github.com/reecebrowne) in [#5802](https://github.com/Stirling-Tools/Stirling-PDF/pull/5802)
- Harden shared signature endpoints  by [@Frooodle](https://github.com/Frooodle) in [#5806](https://github.com/Stirling-Tools/Stirling-PDF/pull/5806)
- open-saml bumps by [@Frooodle](https://github.com/Frooodle) in [#5805](https://github.com/Stirling-Tools/Stirling-PDF/pull/5805)
- fix split cuased by defaultParameters breaking dynamic endpoint tools by [@Frooodle](https://github.com/Frooodle) in [#5838](https://github.com/Stirling-Tools/Stirling-PDF/pull/5838)
- hardening by [@Frooodle](https://github.com/Frooodle) in [#5807](https://github.com/Stirling-Tools/Stirling-PDF/pull/5807)
- Fix health status checks falling under mettric flag by [@Frooodle](https://github.com/Frooodle) in [#5821](https://github.com/Stirling-Tools/Stirling-PDF/pull/5821)
- Frontend and Desktop audit fixes by [@ConnorYoh](https://github.com/ConnorYoh) in [#5840](https://github.com/Stirling-Tools/Stirling-PDF/pull/5840)
- refactor(merge,split,json): adopt streaming approach and standardize types, address gradle warnings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5803](https://github.com/Stirling-Tools/Stirling-PDF/pull/5803)
- fallback for /api/v1/config/endpoints-availability by [@ConnorYoh](https://github.com/ConnorYoh) in [#5842](https://github.com/Stirling-Tools/Stirling-PDF/pull/5842)
- Add check for ghostscript before plowing on with removeDataOutsideCrop by [@ConnorYoh](https://github.com/ConnorYoh) in [#5845](https://github.com/Stirling-Tools/Stirling-PDF/pull/5845)
- Fix split tooltips by [@reecebrowne](https://github.com/reecebrowne) in [#5847](https://github.com/Stirling-Tools/Stirling-PDF/pull/5847)

##### Docker Updates

- disable other dockers by [@Frooodle](https://github.com/Frooodle) in [#5792](https://github.com/Stirling-Tools/Stirling-PDF/pull/5792)
- docker cache fix by [@Frooodle](https://github.com/Frooodle) in [#5801](https://github.com/Stirling-Tools/Stirling-PDF/pull/5801)
- \[Aikido] AI Fix for 3rd party Github Actions should be pinned by [@aikido-autofix](https://github.com/aikido-autofix)\[bot] in [#5817](https://github.com/Stirling-Tools/Stirling-PDF/pull/5817)
- fix(aot): use Spring Boot exploded layer format for aot cache by [@balazs-szucs](https://github.com/balazs-szucs) in [#5811](https://github.com/Stirling-Tools/Stirling-PDF/pull/5811)
- \[StepSecurity] Apply security best practices by [@step-security-bot](https://github.com/step-security-bot) in [#5830](https://github.com/Stirling-Tools/Stirling-PDF/pull/5830)
- tauri jdk25 and docs by [@Frooodle](https://github.com/Frooodle) in [#5814](https://github.com/Stirling-Tools/Stirling-PDF/pull/5814)

##### Development Tools

- build(deps): bump ajv from 8.17.1 to 8.18.0 in /devTools in the npm\_and\_yarn group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5774](https://github.com/Stirling-Tools/Stirling-PDF/pull/5774)
- build(deps-dev): bump stylelint from 16.26.1 to 17.4.0 in /devTools by [@dependabot](https://github.com/dependabot)\[bot] in [#5822](https://github.com/Stirling-Tools/Stirling-PDF/pull/5822)

##### Other Changes

- build(deps-dev): bump pillow from 12.1.0 to 12.1.1 in /.github/scripts in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5720](https://github.com/Stirling-Tools/Stirling-PDF/pull/5720)
- build(deps): bump pillow from 12.1.0 to 12.1.1 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5719](https://github.com/Stirling-Tools/Stirling-PDF/pull/5719)
- deps by [@Frooodle](https://github.com/Frooodle) in [#5796](https://github.com/Stirling-Tools/Stirling-PDF/pull/5796)
- chore(deps): update dependencies for security by [@balazs-szucs](https://github.com/balazs-szucs) in [#5813](https://github.com/Stirling-Tools/Stirling-PDF/pull/5813)
- ci: provide default desktop env vars in tauri GitHub Actions builds by [@Frooodle](https://github.com/Frooodle) in [#5815](https://github.com/Stirling-Tools/Stirling-PDF/pull/5815)
- skip certs by [@Frooodle](https://github.com/Frooodle) in [#5819](https://github.com/Stirling-Tools/Stirling-PDF/pull/5819)
- build(deps): bump pypdf from 6.6.2 to 6.7.4 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5825](https://github.com/Stirling-Tools/Stirling-PDF/pull/5825)
- build(deps): bump github/codeql-action from 4.31.10 to 4.32.4 by [@dependabot](https://github.com/dependabot)\[bot] in [#5833](https://github.com/Stirling-Tools/Stirling-PDF/pull/5833)
- build(deps): bump actions/ai-inference from 2.0.5 to 2.0.7 by [@dependabot](https://github.com/dependabot)\[bot] in [#5831](https://github.com/Stirling-Tools/Stirling-PDF/pull/5831)
- build(deps): bump com.sun.xml.bind:jaxb-core from 2.3.0.1 to 4.0.6 by [@dependabot](https://github.com/dependabot)\[bot] in [#5365](https://github.com/Stirling-Tools/Stirling-PDF/pull/5365)

#### New Contributors

- [@aikido-autofix](https://github.com/aikido-autofix)\[bot] made their first contribution in [#5817](https://github.com/Stirling-Tools/Stirling-PDF/pull/5817)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.3...v2.6.0>

---
##### [\`2.5.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.3)

This release contains:

- New feature for XLSX conversion
- New feature for splitting a page into printable chunks (a3 into 2 a4 etc for posters)
- Keyboard shortcut support for the viewer
- Bug fixes for some viewer issues
- Bug fix for cookie consent showing on desktop builds

#### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@intelliking](https://github.com/intelliking) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

#### New Contributors

- [@intelliking](https://github.com/intelliking) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

<!-- Release notes generated using configuration in .github/release.yml at v2.5.3 -->

#### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@statxc](https://github.com/statxc) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

#### New Contributors

- [@statxc](https://github.com/statxc) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

<!-- Release notes generated using configuration in .github/release.yml at v2.5.3 -->

#### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@statxc](https://github.com/statxc) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

#### New Contributors

- [@statxc](https://github.com/statxc) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

---
##### [\`2.5.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.2)

This is a release for

- Security improvements
- Ruler / Measure support in the viewer
  Bug fixes for:
- writing to forms not working on OSS (package now moved fully to OSS)
- Possible fix for mac desktop issues
- desktop not being detected as desktop all the time
- license checks not having a retry
- desktop having wrong publisher ID

#### What's Changed

##### Enhancements

- Add plist file for Mac permissions by [@jbrunton96](https://github.com/jbrunton96) in [#5756](https://github.com/Stirling-Tools/Stirling-PDF/pull/5756)

##### Minor Enhancements

- ruler support by [@Frooodle](https://github.com/Frooodle) in [#5758](https://github.com/Stirling-Tools/Stirling-PDF/pull/5758)
- fix publishing for tauri author by [@Frooodle](https://github.com/Frooodle) in [#5757](https://github.com/Stirling-Tools/Stirling-PDF/pull/5757)
- dos fixes by [@Frooodle](https://github.com/Frooodle) in [#5759](https://github.com/Stirling-Tools/Stirling-PDF/pull/5759)
- licensere reTry by [@Frooodle](https://github.com/Frooodle) in [#5763](https://github.com/Stirling-Tools/Stirling-PDF/pull/5763)
- authclient by [@Frooodle](https://github.com/Frooodle) in [#5761](https://github.com/Stirling-Tools/Stirling-PDF/pull/5761)
- zipFix by [@Frooodle](https://github.com/Frooodle) in [#5762](https://github.com/Stirling-Tools/Stirling-PDF/pull/5762)
- Update de translation.toml by [@Hugomaulwurf76](https://github.com/Hugomaulwurf76) in [#5736](https://github.com/Stirling-Tools/Stirling-PDF/pull/5736)
- Translate various terms in Italian localization by [@albanobattistella](https://github.com/albanobattistella) in [#5749](https://github.com/Stirling-Tools/Stirling-PDF/pull/5749)
- Move Forms location by [@Frooodle](https://github.com/Frooodle) in [#5769](https://github.com/Stirling-Tools/Stirling-PDF/pull/5769)
- translations ai (please override as you see fit in new PRs these are placeholder) by [@Frooodle](https://github.com/Frooodle) in [#5770](https://github.com/Stirling-Tools/Stirling-PDF/pull/5770)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5675](https://github.com/Stirling-Tools/Stirling-PDF/pull/5675)

##### Other Changes

- build(tauri): enforce Java 17+ requirement in Windows jlink build script by [@Ludy87](https://github.com/Ludy87) in [#5684](https://github.com/Stirling-Tools/Stirling-PDF/pull/5684)

#### New Contributors

- [@Hugomaulwurf76](https://github.com/Hugomaulwurf76) made their first contribution in [#5736](https://github.com/Stirling-Tools/Stirling-PDF/pull/5736)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.1...v2.5.2>

---
##### [\`2.5.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.1)

Several bug fixes in this release

- Login issues showing "something went wrong" when language list = 1
- Forms not showing correctly
- Forms not working on desktop
- Desktop SSO redirect race condition issues
- 431 error for large endpoint for endpoints available

#### What's Changed

##### Minor Enhancements

- Fix SAML login "something went wrong" when language list = 1  by [@Frooodle](https://github.com/Frooodle) in [#5750](https://github.com/Stirling-Tools/Stirling-PDF/pull/5750)
- fix(forms): Update form field UI and behavior for better interactivity and alignment by [@balazs-szucs](https://github.com/balazs-szucs) in [#5747](https://github.com/Stirling-Tools/Stirling-PDF/pull/5747)
- fixes for desktop SSO by [@Frooodle](https://github.com/Frooodle) in [#5751](https://github.com/Stirling-Tools/Stirling-PDF/pull/5751)
- large query reduction by [@Frooodle](https://github.com/Frooodle) in [#5754](https://github.com/Stirling-Tools/Stirling-PDF/pull/5754)
- fix(form-fill): fix hardcoded response by [@balazs-szucs](https://github.com/balazs-szucs) in [#5755](https://github.com/Stirling-Tools/Stirling-PDF/pull/5755)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.0...v2.5.1>

---
##### [\`2.5.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.0)

This is a big update with lots of new functionality and changes like Form fill and redaction/annotation improvements! Also several changes around the login session expiry
Special thanks to [@balazs-szucs](https://github.com/balazs-szucs), who put a lot of work into this release!

New functionality:

- Huge manual redaction changes with colour selection and improved UI
- Add attachment support with sidebar button for viewing attachments etc (Seen in viewer mode)
- FormFill tool with context and UI components for PDF form filling
- Desktop now edits files that have been openned instead of creating new copies
- Extra JWT settings to customise expiry times for desktop and browser
- Add/remove link support

Extra improvements:

- Text selection improvements within the viewer with custom actions
- Improved link handling and link location
- EmbedPDF 2.6.0 upgrade for several bug fixes
- Multiple fixes with the viewer, its functionality, and its export
- PDF Text editor cache / JSON size issues
- Enhanced JWT handling and refreshing for better session management without forced re-logins
- Improved annotation UI
- Files correctly open in the viewer automatically if only 1 file is opened
- Improved tool disable menu to be able to disable all remaining tools and docs

#### What's Changed

##### Enhancements

- feat(redaction): improve manual redaction with color selection and updated UI elements by [@balazs-szucs](https://github.com/balazs-szucs) in [#5679](https://github.com/Stirling-Tools/Stirling-PDF/pull/5679)
- feat(text-selection): implement text selection enhancement for double and triple-click actions by [@balazs-szucs](https://github.com/balazs-szucs) in [#5712](https://github.com/Stirling-Tools/Stirling-PDF/pull/5712)
- feat(linklayer): improve link handling with pdf-lib integration and add link toolbar, add delete link functionality by [@balazs-szucs](https://github.com/balazs-szucs) in [#5715](https://github.com/Stirling-Tools/Stirling-PDF/pull/5715)
- feat(attachments): add attachment support with sidebar and API integration by [@balazs-szucs](https://github.com/balazs-szucs) in [#5673](https://github.com/Stirling-Tools/Stirling-PDF/pull/5673)
- feat(form-fill): FormFill tool with context and UI components for PDF form filling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5711](https://github.com/Stirling-Tools/Stirling-PDF/pull/5711)
- feat(frontend): Upgrade embedPDF to v2.6.0 and migrate to pdf-lib fork, fix attachment/bookmark panel by [@balazs-szucs](https://github.com/balazs-szucs) in [#5723](https://github.com/Stirling-Tools/Stirling-PDF/pull/5723)

##### Minor Enhancements

- Update translation by [@albanobattistella](https://github.com/albanobattistella) in [#5670](https://github.com/Stirling-Tools/Stirling-PDF/pull/5670)
- various  viewer pill fixes by [@reecebrowne](https://github.com/reecebrowne) in [#5714](https://github.com/Stirling-Tools/Stirling-PDF/pull/5714)
- Fix viewer export by [@reecebrowne](https://github.com/reecebrowne) in [#5713](https://github.com/Stirling-Tools/Stirling-PDF/pull/5713)
- fix tool disabling for docs and others by [@Frooodle](https://github.com/Frooodle) in [#5722](https://github.com/Stirling-Tools/Stirling-PDF/pull/5722)
- Preserve local paths for desktop saves by [@Frooodle](https://github.com/Frooodle) in [#5543](https://github.com/Stirling-Tools/Stirling-PDF/pull/5543)
- refactor(api): replace regex string literals with Pattern instances for improved performance and readability by [@balazs-szucs](https://github.com/balazs-szucs) in [#5680](https://github.com/Stirling-Tools/Stirling-PDF/pull/5680)
- refactor: fix homepage file upload path by [@Frooodle](https://github.com/Frooodle) in [#5738](https://github.com/Stirling-Tools/Stirling-PDF/pull/5738)
- PDF Text editor changes by [@Frooodle](https://github.com/Frooodle) in [#5726](https://github.com/Stirling-Tools/Stirling-PDF/pull/5726)
- fix\_env\_files\_for\_tauri by [@ConnorYoh](https://github.com/ConnorYoh) in [#5741](https://github.com/Stirling-Tools/Stirling-PDF/pull/5741)
- JWT enhancements for desktop by [@Frooodle](https://github.com/Frooodle) in [#5742](https://github.com/Stirling-Tools/Stirling-PDF/pull/5742)
- Chore/v2/improve annotation UI by [@reecebrowne](https://github.com/reecebrowne) in [#5724](https://github.com/Stirling-Tools/Stirling-PDF/pull/5724)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.6...v2.5.0>

---
##### [\`2.4.6\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.6)

Several bug fixes for the issues:

- License not always correctly loading due to cache issues
- public endpoints not always accessible when without JWT
- Language not always correctly taking the server's default
- Desktop issues for SAML SSO
- maxFileSize server setting not being handled correctly

As well as

- SSO cleanups
- Extra SSO logging for future issues
- markdown conversion now supports images

#### What's Changed

##### Breaking Changes

- fix(markdown): markdown conversion image handling and zip support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5677](https://github.com/Stirling-Tools/Stirling-PDF/pull/5677)

##### Enhancements

- Enhance SSO SAML in desktop app by [@jbrunton96](https://github.com/jbrunton96) in [#5705](https://github.com/Stirling-Tools/Stirling-PDF/pull/5705)

##### Minor Enhancements

- Fix maxFileSize environment variable support ([#5542](https://github.com/Stirling-Tools/Stirling-PDF/issues/5542)) by [@Eruis2579](https://github.com/Eruis2579) in [#5655](https://github.com/Stirling-Tools/Stirling-PDF/pull/5655)
- Bug fixing and debugs by [@Frooodle](https://github.com/Frooodle) in [#5704](https://github.com/Stirling-Tools/Stirling-PDF/pull/5704)
- fix(api): address potential backend resource leaks and improve frontend accessibility by [@balazs-szucs](https://github.com/balazs-szucs) in [#5678](https://github.com/Stirling-Tools/Stirling-PDF/pull/5678)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5668](https://github.com/Stirling-Tools/Stirling-PDF/pull/5668)
- build(deps): bump com.diffplug.spotless from 8.1.0 to 8.2.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5592](https://github.com/Stirling-Tools/Stirling-PDF/pull/5592)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.5...v2.4.6>

---
##### [\`2.4.5\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.5)

Desktop changes

- Windows desktop MSI to support headless installation with custom parameters to set up server URL and login mode, an example for this would be `msiexec /i "Stirling-PDF-windows-x86_64.msi
  " /qn STIRLING_SERVER_URL="http://192.168.1.53:2357/" STIRLING_LOCK_CONNECTION=1`

`STIRLING_SERVER_URL` auto sets the URL and `STIRLING_LOCK_CONNECTION=1` sets the connection mode to be ONLY self-host server, ensuring no mistaken connections to external servers. Please note this feature is currently in testing, if you have feedback or have tried it please let us know! (Even if it worked perfectly its good to know!)

- SSO UI changes
- support for login method restrictions in desktop
- remembers last entered selfhost URL for easy reconnection

General changes

- SSO functionality cleanups (a few more to come soon!)
- New strict mode for PDF/A conversion for issues were conversation isn't perfect
- redaction improvements

Bug fixes

- SSO auto login mode now working correctly

#### What's Changed

##### Enhancements

- feat:(pdfa-conversion) Implement Strict PDF/A Mode with Verification by [@balazs-szucs](https://github.com/balazs-szucs) in [#5663](https://github.com/Stirling-Tools/Stirling-PDF/pull/5663)
- feat(desktop): show and reuse last used server URL in Setup Wizard by [@Ludy87](https://github.com/Ludy87) in [#5659](https://github.com/Stirling-Tools/Stirling-PDF/pull/5659)
- feat(redaction): update to embedPDF v2.4.0 with unified redaction mode support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5652](https://github.com/Stirling-Tools/Stirling-PDF/pull/5652)

##### Minor Enhancements

- Saml fix by [@Frooodle](https://github.com/Frooodle) in [#5651](https://github.com/Stirling-Tools/Stirling-PDF/pull/5651)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5618](https://github.com/Stirling-Tools/Stirling-PDF/pull/5618)
- fix(frontend): improve synonym search by [@Ludy87](https://github.com/Ludy87) in [#5639](https://github.com/Stirling-Tools/Stirling-PDF/pull/5639)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5666](https://github.com/Stirling-Tools/Stirling-PDF/pull/5666)
- Headless windows installer by [@Frooodle](https://github.com/Frooodle) in [#5664](https://github.com/Stirling-Tools/Stirling-PDF/pull/5664)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5669](https://github.com/Stirling-Tools/Stirling-PDF/pull/5669)
- SSO styling changes  by [@Frooodle](https://github.com/Frooodle) in [#5671](https://github.com/Stirling-Tools/Stirling-PDF/pull/5671)

##### Docker Updates

- build(deps): bump alpine from 3.23.2 to 3.23.3 in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5590](https://github.com/Stirling-Tools/Stirling-PDF/pull/5590)
- chore(ci): update GitHub Actions to latest stable versions by [@Ludy87](https://github.com/Ludy87) in [#5629](https://github.com/Stirling-Tools/Stirling-PDF/pull/5629)

##### Translation Changes

- chore(ci): improve language TOML check output with fixer guidance by [@Ludy87](https://github.com/Ludy87) in [#5638](https://github.com/Stirling-Tools/Stirling-PDF/pull/5638)
- chore(ci): refine pre-commit workflows, add TOML sorting by [@Ludy87](https://github.com/Ludy87) in [#5648](https://github.com/Stirling-Tools/Stirling-PDF/pull/5648)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5667](https://github.com/Stirling-Tools/Stirling-PDF/pull/5667)

##### Development Tools

- chore(vscode): replace deprecated Copilot extension with Copilot Chat by [@Ludy87](https://github.com/Ludy87) in [#5662](https://github.com/Stirling-Tools/Stirling-PDF/pull/5662)

##### Other Changes

- build(deps): bump io.swagger.core.v3:swagger-core-jakarta from 2.2.41 to 2.2.42 by [@dependabot](https://github.com/dependabot)\[bot] in [#5549](https://github.com/Stirling-Tools/Stirling-PDF/pull/5549)
- build(deps): bump org.postgresql:postgresql from 42.7.8 to 42.7.9 by [@dependabot](https://github.com/dependabot)\[bot] in [#5554](https://github.com/Stirling-Tools/Stirling-PDF/pull/5554)
- fix(build): define repositories to resolve test classpath dependencies by [@Ludy87](https://github.com/Ludy87) in [#5650](https://github.com/Stirling-Tools/Stirling-PDF/pull/5650)
- tauri comments by [@Frooodle](https://github.com/Frooodle) in [#5634](https://github.com/Stirling-Tools/Stirling-PDF/pull/5634)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.4...v2.4.5>

---
##### [\`2.4.4\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.4)

Quick fix for page editor bug causes multi-page selection issues

This release also contains

- Italian translations
- Bates stamping functionality to add page numbers
- Extract bookmarks API fix
- Diagnostics command in CLI for easy error reporting (grabs logs into a zip on request for you to view)

#### What's Changed

##### Enhancements

- feat(i18n): add missing compare placeholder and stamp label translations by [@Ludy87](https://github.com/Ludy87) in [#5636](https://github.com/Stirling-Tools/Stirling-PDF/pull/5636)

##### Minor Enhancements

- update to add optional Zero Padding to page numbers (Bates Stamping).… by [@mrober01](https://github.com/mrober01) in [#5612](https://github.com/Stirling-Tools/Stirling-PDF/pull/5612)
- Fix ClassCastException in extractBookmarks endpoint ([#5578](https://github.com/Stirling-Tools/Stirling-PDF/issues/5578)) by [@Eruis2579](https://github.com/Eruis2579) in [#5604](https://github.com/Stirling-Tools/Stirling-PDF/pull/5604)
- Bug/page editor additional fixes by [@reecebrowne](https://github.com/reecebrowne) in [#5660](https://github.com/Stirling-Tools/Stirling-PDF/pull/5660)
- Updated Italian translation by [@albanobattistella](https://github.com/albanobattistella) in [#5637](https://github.com/Stirling-Tools/Stirling-PDF/pull/5637)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5642](https://github.com/Stirling-Tools/Stirling-PDF/pull/5642)

##### Other Changes

- diagnostic script by [@Frooodle](https://github.com/Frooodle) in [#5646](https://github.com/Stirling-Tools/Stirling-PDF/pull/5646)

#### New Contributors

- [@mrober01](https://github.com/mrober01) made their first contribution in [#5612](https://github.com/Stirling-Tools/Stirling-PDF/pull/5612)
- [@Eruis2579](https://github.com/Eruis2579) made their first contribution in [#5604](https://github.com/Stirling-Tools/Stirling-PDF/pull/5604)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.3...v2.4.4>

---
##### [\`2.4.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.3)

Big desktop release today, full of fixes as well as other changes!

- Correctly show desktop and server versioning separately
- Support for watched folders to be recursive and multiple directories to be defined
- Desktop login expiry fix
- Desktop self-host connection improvements (self-sign fixes and others)
- Page editor performance and UI improvements
- frontend error screen appearing during SSO fix
- Desktop CORS fixes

#### What's Changed

##### Enhancements

- feat(settings): display frontend/backend versions and warn on client-server mismatch by [@Ludy87](https://github.com/Ludy87) in [#5571](https://github.com/Stirling-Tools/Stirling-PDF/pull/5571)
- Support multiple pipeline watch directories and configurable pipeline base path by [@Frooodle](https://github.com/Frooodle) in [#5545](https://github.com/Stirling-Tools/Stirling-PDF/pull/5545)

##### Minor Enhancements

- Stop type checking TypeScript files that won't be run by [@jbrunton96](https://github.com/jbrunton96) in [#5607](https://github.com/Stirling-Tools/Stirling-PDF/pull/5607)
- Fixed missing AuthnRequest bug by [@DarioGii](https://github.com/DarioGii) in [#5606](https://github.com/Stirling-Tools/Stirling-PDF/pull/5606)
- Update links to Docs by [@numanair](https://github.com/numanair) in [#5611](https://github.com/Stirling-Tools/Stirling-PDF/pull/5611)
- fix(frontend): prevent hydration errors in admin security form and improve autofill support by [@Ludy87](https://github.com/Ludy87) in [#5613](https://github.com/Stirling-Tools/Stirling-PDF/pull/5613)
- fix(auth): align token refresh handling with updated backend response by [@Ludy87](https://github.com/Ludy87) in [#5609](https://github.com/Stirling-Tools/Stirling-PDF/pull/5609)
- always allow tauri cors by [@Frooodle](https://github.com/Frooodle) in [#5616](https://github.com/Stirling-Tools/Stirling-PDF/pull/5616)
- Bug/pageeditor virtualisation by [@reecebrowne](https://github.com/reecebrowne) in [#5614](https://github.com/Stirling-Tools/Stirling-PDF/pull/5614)
- Stop attempting to refresh Spring tokens in desktop by [@Frooodle](https://github.com/Frooodle) in [#5610](https://github.com/Stirling-Tools/Stirling-PDF/pull/5610)

##### Other Changes

- Update Python dependencies in requirements files by [@Ludy87](https://github.com/Ludy87) in [#5627](https://github.com/Stirling-Tools/Stirling-PDF/pull/5627)
- Pin GitHub Actions and add runner hardening by [@Ludy87](https://github.com/Ludy87) in [#5628](https://github.com/Stirling-Tools/Stirling-PDF/pull/5628)

#### New Contributors

- [@numanair](https://github.com/numanair) made their first contribution in [#5611](https://github.com/Stirling-Tools/Stirling-PDF/pull/5611)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.2...v2.4.3>

---
##### [\`2.4.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.2)

This is a quick update including

- Fixes for Audit display failing under certain scenarios
- Fix for tools not being correctly disabled via disable-endpoints settings
- Text editor font rendering fixes
- New Variables for Stamp PDF feature!

#### What's Changed

##### Enhancements

- feat(stamp): add dynamic variables and templates for stamp text customization by [@balazs-szucs](https://github.com/balazs-szucs) in [#5546](https://github.com/Stirling-Tools/Stirling-PDF/pull/5546)

##### Minor Enhancements

- Fix tool disabling by [@Frooodle](https://github.com/Frooodle) in [#5585](https://github.com/Stirling-Tools/Stirling-PDF/pull/5585)
- Fix Audit & Usage Analytics Sections by [@DarioGii](https://github.com/DarioGii) in [#5586](https://github.com/Stirling-Tools/Stirling-PDF/pull/5586)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5538](https://github.com/Stirling-Tools/Stirling-PDF/pull/5538)

##### Other Changes

- fix: PDF Text Editor file open by [@bittoby](https://github.com/bittoby) in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

#### New Contributors

- [@bittoby](https://github.com/bittoby) made their first contribution in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.1...v2.4.2>

<!-- Release notes generated using configuration in .github/release.yml at v2.4.2 -->

#### What's Changed

##### Enhancements

- feat(stamp): add dynamic variables and templates for stamp text customization by [@balazs-szucs](https://github.com/balazs-szucs) in [#5546](https://github.com/Stirling-Tools/Stirling-PDF/pull/5546)

##### Minor Enhancements

- Fix tool disabling by [@Frooodle](https://github.com/Frooodle) in [#5585](https://github.com/Stirling-Tools/Stirling-PDF/pull/5585)
- Fix Audit & Usage Analytics Sections by [@DarioGii](https://github.com/DarioGii) in [#5586](https://github.com/Stirling-Tools/Stirling-PDF/pull/5586)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5538](https://github.com/Stirling-Tools/Stirling-PDF/pull/5538)

##### Other Changes

- fix: PDF Text Editor file open by [@bittoby](https://github.com/bittoby) in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

#### New Contributors

- [@bittoby](https://github.com/bittoby) made their first contribution in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.1...v2.4.2>

---
##### [\`2.4.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.1)

Lots of bug fixes today!
Fix for HTTPS connection for desktop mode
Xframe option now in settings.yml and options menu for iframe support
Various other bug fixes and dependencies updates!
Mac desktop not starting correctly

#### What's Changed

##### Enhancements

- deps(frontend, tauri): update Tauri, Rust crates, and frontend dependencies by [@Ludy87](https://github.com/Ludy87) in [#5569](https://github.com/Stirling-Tools/Stirling-PDF/pull/5569)

##### Minor Enhancements

- pipeline fixes for naming issues  by [@Frooodle](https://github.com/Frooodle) in [#5570](https://github.com/Stirling-Tools/Stirling-PDF/pull/5570)
- xframe fix new by [@Frooodle](https://github.com/Frooodle) in [#5580](https://github.com/Stirling-Tools/Stirling-PDF/pull/5580)
- tool tags by [@Frooodle](https://github.com/Frooodle) in [#5568](https://github.com/Stirling-Tools/Stirling-PDF/pull/5568)
- deps(embedPDF): Bump codebase to embedPDF v2.3.0 and adjust codebase for new features by [@balazs-szucs](https://github.com/balazs-szucs) in [#5567](https://github.com/Stirling-Tools/Stirling-PDF/pull/5567)
- possible login fixes by [@Frooodle](https://github.com/Frooodle) in [#5444](https://github.com/Stirling-Tools/Stirling-PDF/pull/5444)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5581](https://github.com/Stirling-Tools/Stirling-PDF/pull/5581)

##### Docker Updates

- chore(ci): remove automated version sync job from build workflow by [@Ludy87](https://github.com/Ludy87) in [#5547](https://github.com/Stirling-Tools/Stirling-PDF/pull/5547)

##### Other Changes

- build(deps): bump pypdf from 6.6.0 to 6.6.2 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5577](https://github.com/Stirling-Tools/Stirling-PDF/pull/5577)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.0...v2.4.1>

---
##### [\`2.4.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.0)

Lots of new features in this release

- database backup management (Only for internal H2 database users)
- Full 2FA support with One-time-password auth code app support!
- Get info supporting better compliance verification
- PDF/X conversions
- automation tool now export into folder scan JSONs for folder automation

Bug fixes for

- Sign tool
- SSO user creation
- addStamp not handling timestamps

Thanks as always for all the fixes and work everyone has been doing! such as [@balazs-szucs](https://github.com/balazs-szucs) or the new bug fix from [@Joey4](https://github.com/Joey4) !
Special thanks to [@Ludy87](https://github.com/Ludy87) for introducing the awesome 2FA feature!

#### What's Changed

##### Enhancements

- feat(admin): add H2 database backup & restore management to admin UI by [@Ludy87](https://github.com/Ludy87) in [#5528](https://github.com/Stirling-Tools/Stirling-PDF/pull/5528)
- feat(frontend): enhance icon detection and update config navigation icon by [@Ludy87](https://github.com/Ludy87) in [#5524](https://github.com/Stirling-Tools/Stirling-PDF/pull/5524)
- feat(security): add TOTP-based multi-factor authentication with backend and UI support by [@Ludy87](https://github.com/Ludy87) in [#5417](https://github.com/Stirling-Tools/Stirling-PDF/pull/5417)
- feat(compliance): implement compliance verfication for get info on PDF by [@balazs-szucs](https://github.com/balazs-szucs) in [#5435](https://github.com/Stirling-Tools/Stirling-PDF/pull/5435)

##### Minor Enhancements

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5530](https://github.com/Stirling-Tools/Stirling-PDF/pull/5530)
- fix(annotations): fix error 300 on sign frontend by [@balazs-szucs](https://github.com/balazs-szucs) in [#5536](https://github.com/Stirling-Tools/Stirling-PDF/pull/5536)
- Fix: Whitelist health endpoints in Security and Enterprise Filter + fix keep original commit by [@Frooodle](https://github.com/Frooodle) in [#5494](https://github.com/Stirling-Tools/Stirling-PDF/pull/5494)
- API cleanups by [@Frooodle](https://github.com/Frooodle) in [#5537](https://github.com/Stirling-Tools/Stirling-PDF/pull/5537)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5490](https://github.com/Stirling-Tools/Stirling-PDF/pull/5490)
- refactor(security): clean up SSO handling, harden URL parsing, and bump dependencies by [@Ludy87](https://github.com/Ludy87) in [#5523](https://github.com/Stirling-Tools/Stirling-PDF/pull/5523)
- fix(common): 🛡️CWE-681 & CWE-197 eliminate tainted numeric casts in size parsing by using BigDecimal with range guards by [@Ludy87](https://github.com/Ludy87) in [#5521](https://github.com/Stirling-Tools/Stirling-PDF/pull/5521)
- build(deps): bump nginx from `c083c37` to `b0f7830` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5500](https://github.com/Stirling-Tools/Stirling-PDF/pull/5500)
- build(deps): bump node from `f4769ca` to `e80397b` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5498](https://github.com/Stirling-Tools/Stirling-PDF/pull/5498)
- Fix V2 SSO user creation by [@Frooodle](https://github.com/Frooodle) in [#5079](https://github.com/Stirling-Tools/Stirling-PDF/pull/5079)
- removal of old java desktop + workspace change in tauri by [@Frooodle](https://github.com/Frooodle) in [#5459](https://github.com/Stirling-Tools/Stirling-PDF/pull/5459)
- Date and time placeholders in addTextStamp are not working by [@Joey4](https://github.com/Joey4) in [#5446](https://github.com/Stirling-Tools/Stirling-PDF/pull/5446)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5539](https://github.com/Stirling-Tools/Stirling-PDF/pull/5539)
- \[V2] feat(convert): add PDF/X export option by [@balazs-szucs](https://github.com/balazs-szucs) in [#5285](https://github.com/Stirling-Tools/Stirling-PDF/pull/5285)
- V2 Show enterprise demo messages for audit and usage by [@Frooodle](https://github.com/Frooodle) in [#5226](https://github.com/Stirling-Tools/Stirling-PDF/pull/5226)
- Export folder scanning by [@Frooodle](https://github.com/Frooodle) in [#5544](https://github.com/Stirling-Tools/Stirling-PDF/pull/5544)
- translations by [@Frooodle](https://github.com/Frooodle) in [#5541](https://github.com/Stirling-Tools/Stirling-PDF/pull/5541)

##### Docker Updates

- Add sync-versions job to GitHub Actions workflow by [@Ludy87](https://github.com/Ludy87) in [#5228](https://github.com/Stirling-Tools/Stirling-PDF/pull/5228)
- build(deps): bump debian from `f668110` to `ed542b2` in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5495](https://github.com/Stirling-Tools/Stirling-PDF/pull/5495)

##### Other Changes

- build(deps): bump logback from 1.5.23 to 1.5.24 by [@dependabot](https://github.com/dependabot)\[bot] in [#5468](https://github.com/Stirling-Tools/Stirling-PDF/pull/5468)
- build(deps): bump io.micrometer:micrometer-core from 1.16.1 to 1.16.2 by [@dependabot](https://github.com/dependabot)\[bot] in [#5466](https://github.com/Stirling-Tools/Stirling-PDF/pull/5466)

#### New Contributors

- [@Joey4](https://github.com/Joey4) made their first contribution in [#5446](https://github.com/Stirling-Tools/Stirling-PDF/pull/5446)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.3.1...v2.4.0>

---
##### [\`2.3.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.3.1)

Several bug fixes , including

- Scroll bar not showing correctly in settings menu
- Automate menus showing options correctly

and several other change,s such as SVG to PDF conversion and performance changes throughout app

#### What's Changed

##### Enhancements

- feat(conversion): add SVG to PDF conversion functionality by [@balazs-szucs](https://github.com/balazs-szucs) in [#5431](https://github.com/Stirling-Tools/Stirling-PDF/pull/5431)
- feat(pipeline): improve file processing with resource management and temp file handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5488](https://github.com/Stirling-Tools/Stirling-PDF/pull/5488)
- feat(admin): add tessdata language management for OCR and download support by [@Ludy87](https://github.com/Ludy87) in [#5519](https://github.com/Stirling-Tools/Stirling-PDF/pull/5519)

##### Minor Enhancements

- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5489](https://github.com/Stirling-Tools/Stirling-PDF/pull/5489)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5484](https://github.com/Stirling-Tools/Stirling-PDF/pull/5484)
- \[V2] fix(automation): enhance parameter handling and default values across operations, fix error in ManyToOne tools by [@balazs-szucs](https://github.com/balazs-szucs) in [#5123](https://github.com/Stirling-Tools/Stirling-PDF/pull/5123)
- scrollbar fixes by [@Frooodle](https://github.com/Frooodle) in [#5529](https://github.com/Stirling-Tools/Stirling-PDF/pull/5529)
- Fix hook ordering for endpoint name resolution by [@Frooodle](https://github.com/Frooodle) in [#5517](https://github.com/Stirling-Tools/Stirling-PDF/pull/5517)
- fix(automation): add zIndex and withinPortal props to dropdown components for improved UI consistency by [@balazs-szucs](https://github.com/balazs-szucs) in [#5527](https://github.com/Stirling-Tools/Stirling-PDF/pull/5527)
- refactor: remove legacy Thymeleaf web UI controllers and templates by [@Ludy87](https://github.com/Ludy87) in [#5406](https://github.com/Stirling-Tools/Stirling-PDF/pull/5406)
- fix(pipeline): avoid bad multipart by letting RestTemplate set boundary by [@Ludy87](https://github.com/Ludy87) in [#5522](https://github.com/Stirling-Tools/Stirling-PDF/pull/5522)
- chore(i18n): update and expand Dutch (nl-NL) translations by [@Stephan-P](https://github.com/Stephan-P) in [#5355](https://github.com/Stirling-Tools/Stirling-PDF/pull/5355)
- Update Italian translations by [@albanobattistella](https://github.com/albanobattistella) in [#5508](https://github.com/Stirling-Tools/Stirling-PDF/pull/5508)

##### Docker Updates

- chore(ci): enable Gradle dependency caching across GitHub workflows by [@Ludy87](https://github.com/Ludy87) in [#5400](https://github.com/Stirling-Tools/Stirling-PDF/pull/5400)
- build(deps): bump actions/checkout from 4.2.2 to 6.0.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5465](https://github.com/Stirling-Tools/Stirling-PDF/pull/5465)

##### Development Tools

- build(deps-dev): bump stylelint-config-standard from 39.0.1 to 40.0.0 in /devTools by [@dependabot](https://github.com/dependabot)\[bot] in [#5504](https://github.com/Stirling-Tools/Stirling-PDF/pull/5504)

##### Other Changes

- build(deps): bump actions/download-artifact from 6.0.0 to 7.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5503](https://github.com/Stirling-Tools/Stirling-PDF/pull/5503)
- build(deps): bump reportlab from 4.4.5 to 4.4.9 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5505](https://github.com/Stirling-Tools/Stirling-PDF/pull/5505)

---
##### [\`2.3.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.3.0)

Several important bug fixes in this release related to

- File conversion threading
- Non-roman alphabet files processing incorrectly
- Desktop app bugs (Lots more fixes coming!)
- And many others!

We also have some really cool features introduced such as

- Telegram bot (In Connections menu or settings.yml)
- PDF to EPUB and AZW3
- MSG support

#### What's Changed

##### Enhancements

- feat(build): enhance JaCoCo reporting with coverage summary and enforce thresholds by [@Ludy87](https://github.com/Ludy87) in [#5352](https://github.com/Stirling-Tools/Stirling-PDF/pull/5352)
- feat(ui): prevent self-modification in People management and highlight current user by [@Ludy87](https://github.com/Ludy87) in [#5441](https://github.com/Stirling-Tools/Stirling-PDF/pull/5441)
- feat(conversion): refactor EML parser to use Simple Java Mail library and add MSG support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5427](https://github.com/Stirling-Tools/Stirling-PDF/pull/5427)
- feat(conversion): add PDF to EPUB/AZW3 conversion support and settings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5434](https://github.com/Stirling-Tools/Stirling-PDF/pull/5434)

##### Minor Enhancements

- build(ci): pin base container images, switch npm install to npm ci, and harden EML error handling by [@Ludy87](https://github.com/Ludy87) in [#5353](https://github.com/Stirling-Tools/Stirling-PDF/pull/5353)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5426](https://github.com/Stirling-Tools/Stirling-PDF/pull/5426)
- Updated ga-IE translations and added keys to ignore list by [@aindriu80](https://github.com/aindriu80) in [#5178](https://github.com/Stirling-Tools/Stirling-PDF/pull/5178)
- fix(api): return JSON responses for admin settings + API key endpoints to prevent Tauri client parse errors by [@Ludy87](https://github.com/Ludy87) in [#5437](https://github.com/Stirling-Tools/Stirling-PDF/pull/5437)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5363](https://github.com/Stirling-Tools/Stirling-PDF/pull/5363)
- build(deps): bump node from 20-alpine to 25-alpine in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5311](https://github.com/Stirling-Tools/Stirling-PDF/pull/5311)
- build(deps): bump nginx from `8491795` to `c083c37` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5448](https://github.com/Stirling-Tools/Stirling-PDF/pull/5448)
- build(deps): bump globals from 16.5.0 to 17.0.0 in /frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5413](https://github.com/Stirling-Tools/Stirling-PDF/pull/5413)
- Add Telegram bot integration for pipeline processing by [@Ludy87](https://github.com/Ludy87) in [#5185](https://github.com/Stirling-Tools…
renovate bot added a commit to sdwilsh/ansible-playbooks that referenced this pull request Mar 25, 2026
… docker tag to v2

##### [\`2.8.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.8.0)

This release has lots of good stuff!
Desktop is having its login screen removed and instead will have an optional login with a bypass button
Lots of new features like Comment support, Timestamps, bug fixes and more

- Desktop no longer requires a login to use, this feature is now fully optional and only required for tools which cant run locally (And can be ran on stirling.com OR your own selfhosted indicated with a cloud icon)
- Improved PDF Rendering performance
- Comment support for both viewing and adding (To be enhanced further this week) (Uses your username automatically)
- reintroduced the remove image endpoint
- New RFC 3161 PDF timestamp tool
- Security patches
- Fixed bug for docx conversion on desktop
- Fixed bug fix for email invites
- Possible fix for users reporting text selection issues
- Multi-page PDF layout enhancement with a dramatic increase in customisation!

<img width="963" height="396" alt="image" src="https://github.com/user-attachments/assets/3f53a5b0-bc8e-4239-88a9-a750067930e4" />

Special thanks to the new OSS devs who have done some big PRs in this release, adding some great new features!

#### What's Changed

##### Enhancements

- feat(pdf): replace PdfLib with Pdfium for form handling and general rendering tasks by [@balazs-szucs](https://github.com/balazs-szucs) in [#5899](https://github.com/Stirling-Tools/Stirling-PDF/pull/5899)
- Remove images by [@Frooodle](https://github.com/Frooodle) in [#5966](https://github.com/Stirling-Tools/Stirling-PDF/pull/5966)
- feat(security): add RFC 3161 PDF timestamp tool by [@InstaZDLL](https://github.com/InstaZDLL) in [#5855](https://github.com/Stirling-Tools/Stirling-PDF/pull/5855)

##### Minor Enhancements

- Update Spanish translation (translation.toml) by [@sraaronrock](https://github.com/sraaronrock) in [#5965](https://github.com/Stirling-Tools/Stirling-PDF/pull/5965)
- Add explicit Save As button for desktop viewer (issue [#5928](https://github.com/Stirling-Tools/Stirling-PDF/issues/5928)) by [@Achieve3318](https://github.com/Achieve3318) in [#5959](https://github.com/Stirling-Tools/Stirling-PDF/pull/5959)
- XSS for eml and others by [@Frooodle](https://github.com/Frooodle) in [#5967](https://github.com/Stirling-Tools/Stirling-PDF/pull/5967)
- Add frontend developer guide describing the path alias architecture by [@jbrunton96](https://github.com/jbrunton96) in [#5964](https://github.com/Stirling-Tools/Stirling-PDF/pull/5964)
- Remove cmd-r override for rotation because it interferes with refresh by [@jbrunton96](https://github.com/jbrunton96) in [#5981](https://github.com/Stirling-Tools/Stirling-PDF/pull/5981)
- Fix save converted files by [@reecebrowne](https://github.com/reecebrowne) in [#5971](https://github.com/Stirling-Tools/Stirling-PDF/pull/5971)
- Bump/embed pdfv2.8.0 by [@EthanHealy01](https://github.com/EthanHealy01) in [#5921](https://github.com/Stirling-Tools/Stirling-PDF/pull/5921)
- Invite-link-issues by [@ConnorYoh](https://github.com/ConnorYoh) in [#5983](https://github.com/Stirling-Tools/Stirling-PDF/pull/5983)
- Desktop/remove hard requirement auth wall on desktop by [@EthanHealy01](https://github.com/EthanHealy01) in [#5956](https://github.com/Stirling-Tools/Stirling-PDF/pull/5956)
- Fix/v2/text selection 2 by [@reecebrowne](https://github.com/reecebrowne) in [#5990](https://github.com/Stirling-Tools/Stirling-PDF/pull/5990)
- FileReadiness  by [@Frooodle](https://github.com/Frooodle) in [#5985](https://github.com/Stirling-Tools/Stirling-PDF/pull/5985)
- Enhance multi-page PDF layout with advanced customization options ([#397](https://github.com/Stirling-Tools/Stirling-PDF/issues/397), [#3655](https://github.com/Stirling-Tools/Stirling-PDF/issues/3655)) by [@OUNZAR-Aymane](https://github.com/OUNZAR-Aymane) in [#5859](https://github.com/Stirling-Tools/Stirling-PDF/pull/5859)
- fix pause-rounded icon typos and comments by [@rafaroseira](https://github.com/rafaroseira) in [#5992](https://github.com/Stirling-Tools/Stirling-PDF/pull/5992)

##### Docker Updates

- fix(gradle): bump gradle jar version to 9.3.1-bin by [@balazs-szucs](https://github.com/balazs-szucs) in [#5938](https://github.com/Stirling-Tools/Stirling-PDF/pull/5938)
- build(deps): bump docker/setup-qemu-action from 3.7.0 to 4.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5977](https://github.com/Stirling-Tools/Stirling-PDF/pull/5977)
- build(deps): bump actions/cache from 5.0.3 to 5.0.4 by [@dependabot](https://github.com/dependabot)\[bot] in [#5976](https://github.com/Stirling-Tools/Stirling-PDF/pull/5976)
- build(deps): bump sigstore/cosign-installer from 4.0.0 to 4.1.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5975](https://github.com/Stirling-Tools/Stirling-PDF/pull/5975)

##### Other Changes

- build(deps): bump softprops/action-gh-release from 2.5.0 to 2.6.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5979](https://github.com/Stirling-Tools/Stirling-PDF/pull/5979)
- chore(deps): bump pdfbox version to 3.0.7 by [@balazs-szucs](https://github.com/balazs-szucs) in [#5923](https://github.com/Stirling-Tools/Stirling-PDF/pull/5923)
- junits by [@Frooodle](https://github.com/Frooodle) in [#5988](https://github.com/Stirling-Tools/Stirling-PDF/pull/5988)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5946](https://github.com/Stirling-Tools/Stirling-PDF/pull/5946)

#### New Contributors

- [@sraaronrock](https://github.com/sraaronrock) made their first contribution in [#5965](https://github.com/Stirling-Tools/Stirling-PDF/pull/5965)
- [@Achieve3318](https://github.com/Achieve3318) made their first contribution in [#5959](https://github.com/Stirling-Tools/Stirling-PDF/pull/5959)
- [@InstaZDLL](https://github.com/InstaZDLL) made their first contribution in [#5855](https://github.com/Stirling-Tools/Stirling-PDF/pull/5855)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.7.3...v2.8.0>

---
##### [\`2.7.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.3)

- New PDF read aloud feature in viewer mode to "speak" the PDF to you, will be improved more going forwards!
- Improved annotation handling in annotation UI
- Mac printing is finally working on desktop app!
- Several general bug fixes such as Fix non-ASCII characters in headers being rejected
- Fix bug for HTTP2 support

In this release, we have also removed the remove-image tool temporarily, along with some changes to folder watching. If you use these, we recommend holding off on this release till our 2.8.0 release, planned for release in the next few days

#### What's Changed

##### Enhancements

- feat(http2): add jetty-alpn-java-server dependency for HTTP/2 support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5945](https://github.com/Stirling-Tools/Stirling-PDF/pull/5945)

##### Minor Enhancements

- Improve annotations by [@EthanHealy01](https://github.com/EthanHealy01) in [#5919](https://github.com/Stirling-Tools/Stirling-PDF/pull/5919)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5798](https://github.com/Stirling-Tools/Stirling-PDF/pull/5798)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5930](https://github.com/Stirling-Tools/Stirling-PDF/pull/5930)
- Fix printing on Mac desktop by [@jbrunton96](https://github.com/jbrunton96) in [#5920](https://github.com/Stirling-Tools/Stirling-PDF/pull/5920)
- Delete code from invalid license by [@Frooodle](https://github.com/Frooodle) in [#5947](https://github.com/Stirling-Tools/Stirling-PDF/pull/5947)
- fix jumping cursor bug by [@rafaroseira](https://github.com/rafaroseira) in [#5937](https://github.com/Stirling-Tools/Stirling-PDF/pull/5937)
- Fix `any` type usage in the `saas/` folder by [@jbrunton96](https://github.com/jbrunton96) in [#5934](https://github.com/Stirling-Tools/Stirling-PDF/pull/5934)
- Unify creditCosts.ts files by [@jbrunton96](https://github.com/jbrunton96) in [#5952](https://github.com/Stirling-Tools/Stirling-PDF/pull/5952)
- Hotfix-cant-run-tools-when-no-credits by [@ConnorYoh](https://github.com/ConnorYoh) in [#5955](https://github.com/Stirling-Tools/Stirling-PDF/pull/5955)
- Fix non-ASCII characters in headers being rejected ([#5377](https://github.com/Stirling-Tools/Stirling-PDF/issues/5377)) by [@Eruis2579](https://github.com/Eruis2579) in [#5699](https://github.com/Stirling-Tools/Stirling-PDF/pull/5699)
- speaking! by [@Frooodle](https://github.com/Frooodle) in [#5925](https://github.com/Stirling-Tools/Stirling-PDF/pull/5925)

##### Docker Updates

- build(deps): bump step-security/harden-runner from 2.14.0 to 2.15.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5896](https://github.com/Stirling-Tools/Stirling-PDF/pull/5896)
- build(deps): bump crazy-max/ghaction-github-runtime from 3.1.0 to 4.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5890](https://github.com/Stirling-Tools/Stirling-PDF/pull/5890)
- build(deps): bump docker/metadata-action from 5.10.0 to 6.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5889](https://github.com/Stirling-Tools/Stirling-PDF/pull/5889)
- build(deps): bump actions/setup-python from 6.1.0 to 6.2.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5886](https://github.com/Stirling-Tools/Stirling-PDF/pull/5886)
- build(deps): bump actions/cache from 4.3.0 to 5.0.3 by [@dependabot](https://github.com/dependabot)\[bot] in [#5940](https://github.com/Stirling-Tools/Stirling-PDF/pull/5940)
- build(deps): bump dorny/paths-filter from 3.0.2 to 4.0.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5943](https://github.com/Stirling-Tools/Stirling-PDF/pull/5943)
- build(deps): bump actions/upload-artifact from 6.0.0 to 7.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5939](https://github.com/Stirling-Tools/Stirling-PDF/pull/5939)
- Fix Docker builds on Debian by [@unlair](https://github.com/unlair) in [#5936](https://github.com/Stirling-Tools/Stirling-PDF/pull/5936)

##### Other Changes

- build(deps): bump actions/download-artifact from 7.0.0 to 8.0.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5887](https://github.com/Stirling-Tools/Stirling-PDF/pull/5887)
- Add SaaS AI engine by [@jbrunton96](https://github.com/jbrunton96) in [#5907](https://github.com/Stirling-Tools/Stirling-PDF/pull/5907)
- build(deps): bump srvaroa/labeler from 1.13.0 to 1.14.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5942](https://github.com/Stirling-Tools/Stirling-PDF/pull/5942)
- build(deps): bump github/codeql-action from 4.32.4 to 4.32.6 by [@dependabot](https://github.com/dependabot)\[bot] in [#5941](https://github.com/Stirling-Tools/Stirling-PDF/pull/5941)

#### New Contributors

- [@rafaroseira](https://github.com/rafaroseira) made their first contribution in [#5937](https://github.com/Stirling-Tools/Stirling-PDF/pull/5937)
- [@unlair](https://github.com/unlair) made their first contribution in [#5936](https://github.com/Stirling-Tools/Stirling-PDF/pull/5936)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.7.2...v2.7.3>

---
##### [\`2.7.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.2)

Had a bug where self-hosted connections via desktop would stop working, thinking they were connecting to a non selfhost instance

##### What's Changed

##### Minor Enhancements

- Check if saas before blocking credit insufficiencies by [@ConnorYoh](https://github.com/ConnorYoh) in [#5929](https://github.com/Stirling-Tools/Stirling-PDF/pull/5929)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.7.1...v2.7.2>

<!-- Release notes generated using configuration in .github/release.yml at v2.7.2 -->

##### What's Changed

##### Minor Enhancements

- Check if saas before blocking credit insufficiencies by [@ConnorYoh](https://github.com/ConnorYoh) in [#5929](https://github.com/Stirling-Tools/Stirling-PDF/pull/5929)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.7.1...v2.7.2>

---
##### [\`2.7.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.1)

Bug fixes for various issues such as:

- Desktop conversions mistakenly doing a 'save' to 'save as'
- Desktop 'open with PDF' having invalid description on windows
- Posthog still creating a cookie even when its not used (still a  fully unused cookie tho)
- Desktop not falling back to local connection if on selfhosted and server down
- Rotate on large docs not always working correctly

##### What's Changed

##### Minor Enhancements

- Chore/v2/transforms as root by [@reecebrowne](https://github.com/reecebrowne) in [#5868](https://github.com/Stirling-Tools/Stirling-PDF/pull/5868)
- Limit PostHog cookie to Stirling PDF's subdomain only by [@bban160](https://github.com/bban160) in [#5882](https://github.com/Stirling-Tools/Stirling-PDF/pull/5882)
- Posthog-fixes by [@ConnorYoh](https://github.com/ConnorYoh) in [#5901](https://github.com/Stirling-Tools/Stirling-PDF/pull/5901)
- Get rid of bad description for file association on Windows by [@jbrunton96](https://github.com/jbrunton96) in [#5905](https://github.com/Stirling-Tools/Stirling-PDF/pull/5905)
- Desktop: Fallback to local backend if self-hosted server is offline by [@ConnorYoh](https://github.com/ConnorYoh) in [#5880](https://github.com/Stirling-Tools/Stirling-PDF/pull/5880)
- Add SaaS frontend code by [@jbrunton96](https://github.com/jbrunton96) in [#5879](https://github.com/Stirling-Tools/Stirling-PDF/pull/5879)
- Manage state of price-lookup calls by [@ConnorYoh](https://github.com/ConnorYoh) in [#5915](https://github.com/Stirling-Tools/Stirling-PDF/pull/5915)
- Add system for managing env vars by [@jbrunton96](https://github.com/jbrunton96) in [#5902](https://github.com/Stirling-Tools/Stirling-PDF/pull/5902)
- Fix rotate failing on large documents by [@reecebrowne](https://github.com/reecebrowne) in [#5917](https://github.com/Stirling-Tools/Stirling-PDF/pull/5917)
- Cleanup-conversion-translations by [@ConnorYoh](https://github.com/ConnorYoh) in [#5906](https://github.com/Stirling-Tools/Stirling-PDF/pull/5906)
- Update Italian translations by [@albanobattistella](https://github.com/albanobattistella) in [#5884](https://github.com/Stirling-Tools/Stirling-PDF/pull/5884)

##### Development Tools

- Move AI advice to AGENTS.md and add symlink from CLAUDE.md by [@jbrunton96](https://github.com/jbrunton96) in [#5914](https://github.com/Stirling-Tools/Stirling-PDF/pull/5914)

##### New Contributors

- [@bban160](https://github.com/bban160) made their first contribution in [#5882](https://github.com/Stirling-Tools/Stirling-PDF/pull/5882)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.7.0...v2.7.1>

---
##### [\`2.7.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.7.0)

Lots of changes in this release yet again!

App:

- option to hide google drive and mobile upload when disabled in 'my files' view
- New search bar to search settings menu easily
- Auditing has improved, new filehash/author options are supported with better reporting overall (We recommend enterprise users to backup their Stirling database before updating to be safe, although expect no issues)

Desktop:

- Desktop app correctly returns to its previous window state and location as its previous launch
- Desktop app supports OS notifications if it finishes working on tasks whilst minimised

Bugs fixed:

- Pipeline erroring in merge tool and others based on parameters
- Certification signature stamps not showing correctly in the viewer
- English was being enabled even when it was disabled in settings

##### What's Changed

##### Enhancements

- settings menu reworks by [@Frooodle](https://github.com/Frooodle) in [#5864](https://github.com/Stirling-Tools/Stirling-PDF/pull/5864)

##### Minor Enhancements

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5775](https://github.com/Stirling-Tools/Stirling-PDF/pull/5775)
- Persist Tauri window state between launches by [@Frooodle](https://github.com/Frooodle) in [#5871](https://github.com/Stirling-Tools/Stirling-PDF/pull/5871)
- tauri notifications by [@Frooodle](https://github.com/Frooodle) in [#5875](https://github.com/Stirling-Tools/Stirling-PDF/pull/5875)
- Audit fixes and improvements by [@Frooodle](https://github.com/Frooodle) in [#5835](https://github.com/Stirling-Tools/Stirling-PDF/pull/5835)
- fix: merge pdf pipeline validation by [@RenzoMXD](https://github.com/RenzoMXD) in [#5799](https://github.com/Stirling-Tools/Stirling-PDF/pull/5799)
- Fix signatures not showing by [@ConnorYoh](https://github.com/ConnorYoh) in [#5872](https://github.com/Stirling-Tools/Stirling-PDF/pull/5872)
- Add the production billing portal link for static plan page by [@ConnorYoh](https://github.com/ConnorYoh) in [#5860](https://github.com/Stirling-Tools/Stirling-PDF/pull/5860)
- option to hide google drive and add settings by [@Frooodle](https://github.com/Frooodle) in [#5863](https://github.com/Stirling-Tools/Stirling-PDF/pull/5863)
- stop enabling english by [@Frooodle](https://github.com/Frooodle) in [#5874](https://github.com/Stirling-Tools/Stirling-PDF/pull/5874)
- Add searchable settings selector to AppConfigModal and improve nav behavior by [@Frooodle](https://github.com/Frooodle) in [#5873](https://github.com/Stirling-Tools/Stirling-PDF/pull/5873)

##### Docker Updates

- build(deps): bump actions/setup-node from 4.4.0 to 6.2.0 by [@dependabot](https://github.com/dependabot)\[bot] in [#5691](https://github.com/Stirling-Tools/Stirling-PDF/pull/5691)

##### Other Changes

- Don't build mac if you don't have the secrets by [@ConnorYoh](https://github.com/ConnorYoh) in [#5861](https://github.com/Stirling-Tools/Stirling-PDF/pull/5861)
- build(deps): bump digicert/ssm-code-signing from 1.2.0 to 1.2.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5692](https://github.com/Stirling-Tools/Stirling-PDF/pull/5692)
- build(deps): bump pypdf from 6.7.4 to 6.7.5 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5853](https://github.com/Stirling-Tools/Stirling-PDF/pull/5853)
- translations and version bump by [@Frooodle](https://github.com/Frooodle) in [#5878](https://github.com/Stirling-Tools/Stirling-PDF/pull/5878)

##### New Contributors

- [@RenzoMXD](https://github.com/RenzoMXD) made their first contribution in [#5799](https://github.com/Stirling-Tools/Stirling-PDF/pull/5799)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.6.0...v2.7.0>

---
##### [\`2.6.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.6.0)

In this update, we have drastically improved Stirling PDFs memory usage and startup performance in our testing you should see around a 30% reduction in both idle usage and startup speed
We have also dramatically reduced the filesize of the docker by 30-40%

Breaking updates:
No longer supporting JDK 17, we have moved to JDK 21-25 and are recommending all jar installs to upgrade to JDK 25 for best performance

Other updates

- Desktop now supports running non installed tools by optionally connecting to Stirling cloud server IF a user chooses to and is already running via login to cloud
- Several dependencies have been updated
- Security patches

Bug fixes

- Health check failing under certain auth scenarios
- Crop not working for desktop

##### What's Changed

##### Enhancements

- feat(docker): update base images to Java 25, Spring 4, Jackson 3, Gradle 9 and optimize JVM options (Project Lilliput) by [@balazs-szucs](https://github.com/balazs-szucs) in [#5725](https://github.com/Stirling-Tools/Stirling-PDF/pull/5725)
- feat(annotation): add moveAnnotation API for efficient repositioning of annotations, and bump embed to 2.7.0 by [@balazs-szucs](https://github.com/balazs-szucs) in [#5809](https://github.com/Stirling-Tools/Stirling-PDF/pull/5809)
- feat(conversion): switch PDF input engine to pdftohtml for improved performance and reduced dependencies by [@balazs-szucs](https://github.com/balazs-szucs) in [#5820](https://github.com/Stirling-Tools/Stirling-PDF/pull/5820)
- feat(aot): add aot-diagnostics.sh for AOT cache diagnostics and validation by [@balazs-szucs](https://github.com/balazs-szucs) in [#5848](https://github.com/Stirling-Tools/Stirling-PDF/pull/5848)

##### Minor Enhancements

- Update frontend minor package versions by [@jbrunton96](https://github.com/jbrunton96) in [#5787](https://github.com/Stirling-Tools/Stirling-PDF/pull/5787)
- Sync up Tauri versions by [@jbrunton96](https://github.com/jbrunton96) in [#5789](https://github.com/Stirling-Tools/Stirling-PDF/pull/5789)
- zip and response issues by [@Frooodle](https://github.com/Frooodle) in [#5786](https://github.com/Stirling-Tools/Stirling-PDF/pull/5786)
- Change to use dpdm for circular import scanning by [@jbrunton96](https://github.com/jbrunton96) in [#5788](https://github.com/Stirling-Tools/Stirling-PDF/pull/5788)
- Cachefixing test by [@Frooodle](https://github.com/Frooodle) in [#5793](https://github.com/Stirling-Tools/Stirling-PDF/pull/5793)
- Desktop connection SaaS: config, billing, team support by [@ConnorYoh](https://github.com/ConnorYoh) in [#5768](https://github.com/Stirling-Tools/Stirling-PDF/pull/5768)
- Switch to use ESLint 10 by [@jbrunton96](https://github.com/jbrunton96) in [#5794](https://github.com/Stirling-Tools/Stirling-PDF/pull/5794)
- cleanups by [@Frooodle](https://github.com/Frooodle) in [#5795](https://github.com/Stirling-Tools/Stirling-PDF/pull/5795)
- DocumentBuilderFactory limiting by [@Frooodle](https://github.com/Frooodle) in [#5797](https://github.com/Stirling-Tools/Stirling-PDF/pull/5797)
- lint by [@reecebrowne](https://github.com/reecebrowne) in [#5802](https://github.com/Stirling-Tools/Stirling-PDF/pull/5802)
- Harden shared signature endpoints  by [@Frooodle](https://github.com/Frooodle) in [#5806](https://github.com/Stirling-Tools/Stirling-PDF/pull/5806)
- open-saml bumps by [@Frooodle](https://github.com/Frooodle) in [#5805](https://github.com/Stirling-Tools/Stirling-PDF/pull/5805)
- fix split cuased by defaultParameters breaking dynamic endpoint tools by [@Frooodle](https://github.com/Frooodle) in [#5838](https://github.com/Stirling-Tools/Stirling-PDF/pull/5838)
- hardening by [@Frooodle](https://github.com/Frooodle) in [#5807](https://github.com/Stirling-Tools/Stirling-PDF/pull/5807)
- Fix health status checks falling under mettric flag by [@Frooodle](https://github.com/Frooodle) in [#5821](https://github.com/Stirling-Tools/Stirling-PDF/pull/5821)
- Frontend and Desktop audit fixes by [@ConnorYoh](https://github.com/ConnorYoh) in [#5840](https://github.com/Stirling-Tools/Stirling-PDF/pull/5840)
- refactor(merge,split,json): adopt streaming approach and standardize types, address gradle warnings by [@balazs-szucs](https://github.com/balazs-szucs) in [#5803](https://github.com/Stirling-Tools/Stirling-PDF/pull/5803)
- fallback for /api/v1/config/endpoints-availability by [@ConnorYoh](https://github.com/ConnorYoh) in [#5842](https://github.com/Stirling-Tools/Stirling-PDF/pull/5842)
- Add check for ghostscript before plowing on with removeDataOutsideCrop by [@ConnorYoh](https://github.com/ConnorYoh) in [#5845](https://github.com/Stirling-Tools/Stirling-PDF/pull/5845)
- Fix split tooltips by [@reecebrowne](https://github.com/reecebrowne) in [#5847](https://github.com/Stirling-Tools/Stirling-PDF/pull/5847)

##### Docker Updates

- disable other dockers by [@Frooodle](https://github.com/Frooodle) in [#5792](https://github.com/Stirling-Tools/Stirling-PDF/pull/5792)
- docker cache fix by [@Frooodle](https://github.com/Frooodle) in [#5801](https://github.com/Stirling-Tools/Stirling-PDF/pull/5801)
- \[Aikido] AI Fix for 3rd party Github Actions should be pinned by [@aikido-autofix](https://github.com/aikido-autofix)\[bot] in [#5817](https://github.com/Stirling-Tools/Stirling-PDF/pull/5817)
- fix(aot): use Spring Boot exploded layer format for aot cache by [@balazs-szucs](https://github.com/balazs-szucs) in [#5811](https://github.com/Stirling-Tools/Stirling-PDF/pull/5811)
- \[StepSecurity] Apply security best practices by [@step-security-bot](https://github.com/step-security-bot) in [#5830](https://github.com/Stirling-Tools/Stirling-PDF/pull/5830)
- tauri jdk25 and docs by [@Frooodle](https://github.com/Frooodle) in [#5814](https://github.com/Stirling-Tools/Stirling-PDF/pull/5814)

##### Development Tools

- build(deps): bump ajv from 8.17.1 to 8.18.0 in /devTools in the npm\_and\_yarn group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5774](https://github.com/Stirling-Tools/Stirling-PDF/pull/5774)
- build(deps-dev): bump stylelint from 16.26.1 to 17.4.0 in /devTools by [@dependabot](https://github.com/dependabot)\[bot] in [#5822](https://github.com/Stirling-Tools/Stirling-PDF/pull/5822)

##### Other Changes

- build(deps-dev): bump pillow from 12.1.0 to 12.1.1 in /.github/scripts in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5720](https://github.com/Stirling-Tools/Stirling-PDF/pull/5720)
- build(deps): bump pillow from 12.1.0 to 12.1.1 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5719](https://github.com/Stirling-Tools/Stirling-PDF/pull/5719)
- deps by [@Frooodle](https://github.com/Frooodle) in [#5796](https://github.com/Stirling-Tools/Stirling-PDF/pull/5796)
- chore(deps): update dependencies for security by [@balazs-szucs](https://github.com/balazs-szucs) in [#5813](https://github.com/Stirling-Tools/Stirling-PDF/pull/5813)
- ci: provide default desktop env vars in tauri GitHub Actions builds by [@Frooodle](https://github.com/Frooodle) in [#5815](https://github.com/Stirling-Tools/Stirling-PDF/pull/5815)
- skip certs by [@Frooodle](https://github.com/Frooodle) in [#5819](https://github.com/Stirling-Tools/Stirling-PDF/pull/5819)
- build(deps): bump pypdf from 6.6.2 to 6.7.4 in /testing/cucumber by [@dependabot](https://github.com/dependabot)\[bot] in [#5825](https://github.com/Stirling-Tools/Stirling-PDF/pull/5825)
- build(deps): bump github/codeql-action from 4.31.10 to 4.32.4 by [@dependabot](https://github.com/dependabot)\[bot] in [#5833](https://github.com/Stirling-Tools/Stirling-PDF/pull/5833)
- build(deps): bump actions/ai-inference from 2.0.5 to 2.0.7 by [@dependabot](https://github.com/dependabot)\[bot] in [#5831](https://github.com/Stirling-Tools/Stirling-PDF/pull/5831)
- build(deps): bump com.sun.xml.bind:jaxb-core from 2.3.0.1 to 4.0.6 by [@dependabot](https://github.com/dependabot)\[bot] in [#5365](https://github.com/Stirling-Tools/Stirling-PDF/pull/5365)

##### New Contributors

- [@aikido-autofix](https://github.com/aikido-autofix)\[bot] made their first contribution in [#5817](https://github.com/Stirling-Tools/Stirling-PDF/pull/5817)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.3...v2.6.0>

---
##### [\`2.5.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.3)

This release contains:

- New feature for XLSX conversion
- New feature for splitting a page into printable chunks (a3 into 2 a4 etc for posters)
- Keyboard shortcut support for the viewer
- Bug fixes for some viewer issues
- Bug fix for cookie consent showing on desktop builds

##### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@intelliking](https://github.com/intelliking) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

##### New Contributors

- [@intelliking](https://github.com/intelliking) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

<!-- Release notes generated using configuration in .github/release.yml at v2.5.3 -->

##### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@statxc](https://github.com/statxc) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

##### New Contributors

- [@statxc](https://github.com/statxc) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

<!-- Release notes generated using configuration in .github/release.yml at v2.5.3 -->

##### What's Changed

##### Enhancements

- feat(form-fill): add CSV and XLSX extraction for form fields, improve file ID handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5776](https://github.com/Stirling-Tools/Stirling-PDF/pull/5776)
- feat(conversion): add PDF to Excel (XLSX) conversion by [@balazs-szucs](https://github.com/balazs-szucs) in [#5778](https://github.com/Stirling-Tools/Stirling-PDF/pull/5778)
- feat: split pdf into small chunks by pdfbox by [@statxc](https://github.com/statxc) in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)
- feat(viewer): handle keyboard shortcuts for print, save, undo, etc. by [@balazs-szucs](https://github.com/balazs-szucs) in [#5748](https://github.com/Stirling-Tools/Stirling-PDF/pull/5748)

##### Minor Enhancements

- cucumber for days by [@Frooodle](https://github.com/Frooodle) in [#5766](https://github.com/Stirling-Tools/Stirling-PDF/pull/5766)
- refactor(link-layer): migrate to EmbedPDF v2.6.2 annotation state for link rendering and improve link handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5760](https://github.com/Stirling-Tools/Stirling-PDF/pull/5760)
- Fix cookie consent reappearing on desktop builds by [@jbrunton96](https://github.com/jbrunton96) in [#5780](https://github.com/Stirling-Tools/Stirling-PDF/pull/5780)
- Fix export by [@reecebrowne](https://github.com/reecebrowne) in [#5782](https://github.com/Stirling-Tools/Stirling-PDF/pull/5782)
- If in viewer load latest file in viewer  by [@reecebrowne](https://github.com/reecebrowne) in [#5784](https://github.com/Stirling-Tools/Stirling-PDF/pull/5784)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5781](https://github.com/Stirling-Tools/Stirling-PDF/pull/5781)

##### New Contributors

- [@statxc](https://github.com/statxc) made their first contribution in [#5718](https://github.com/Stirling-Tools/Stirling-PDF/pull/5718)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.2...v2.5.3>

---
##### [\`2.5.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.2)

This is a release for

- Security improvements
- Ruler / Measure support in the viewer
  Bug fixes for:
- writing to forms not working on OSS (package now moved fully to OSS)
- Possible fix for mac desktop issues
- desktop not being detected as desktop all the time
- license checks not having a retry
- desktop having wrong publisher ID

##### What's Changed

##### Enhancements

- Add plist file for Mac permissions by [@jbrunton96](https://github.com/jbrunton96) in [#5756](https://github.com/Stirling-Tools/Stirling-PDF/pull/5756)

##### Minor Enhancements

- ruler support by [@Frooodle](https://github.com/Frooodle) in [#5758](https://github.com/Stirling-Tools/Stirling-PDF/pull/5758)
- fix publishing for tauri author by [@Frooodle](https://github.com/Frooodle) in [#5757](https://github.com/Stirling-Tools/Stirling-PDF/pull/5757)
- dos fixes by [@Frooodle](https://github.com/Frooodle) in [#5759](https://github.com/Stirling-Tools/Stirling-PDF/pull/5759)
- licensere reTry by [@Frooodle](https://github.com/Frooodle) in [#5763](https://github.com/Stirling-Tools/Stirling-PDF/pull/5763)
- authclient by [@Frooodle](https://github.com/Frooodle) in [#5761](https://github.com/Stirling-Tools/Stirling-PDF/pull/5761)
- zipFix by [@Frooodle](https://github.com/Frooodle) in [#5762](https://github.com/Stirling-Tools/Stirling-PDF/pull/5762)
- Update de translation.toml by [@Hugomaulwurf76](https://github.com/Hugomaulwurf76) in [#5736](https://github.com/Stirling-Tools/Stirling-PDF/pull/5736)
- Translate various terms in Italian localization by [@albanobattistella](https://github.com/albanobattistella) in [#5749](https://github.com/Stirling-Tools/Stirling-PDF/pull/5749)
- Move Forms location by [@Frooodle](https://github.com/Frooodle) in [#5769](https://github.com/Stirling-Tools/Stirling-PDF/pull/5769)
- translations ai (please override as you see fit in new PRs these are placeholder) by [@Frooodle](https://github.com/Frooodle) in [#5770](https://github.com/Stirling-Tools/Stirling-PDF/pull/5770)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5675](https://github.com/Stirling-Tools/Stirling-PDF/pull/5675)

##### Other Changes

- build(tauri): enforce Java 17+ requirement in Windows jlink build script by [@Ludy87](https://github.com/Ludy87) in [#5684](https://github.com/Stirling-Tools/Stirling-PDF/pull/5684)

##### New Contributors

- [@Hugomaulwurf76](https://github.com/Hugomaulwurf76) made their first contribution in [#5736](https://github.com/Stirling-Tools/Stirling-PDF/pull/5736)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.1...v2.5.2>

---
##### [\`2.5.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.1)

Several bug fixes in this release

- Login issues showing "something went wrong" when language list = 1
- Forms not showing correctly
- Forms not working on desktop
- Desktop SSO redirect race condition issues
- 431 error for large endpoint for endpoints available

##### What's Changed

##### Minor Enhancements

- Fix SAML login "something went wrong" when language list = 1  by [@Frooodle](https://github.com/Frooodle) in [#5750](https://github.com/Stirling-Tools/Stirling-PDF/pull/5750)
- fix(forms): Update form field UI and behavior for better interactivity and alignment by [@balazs-szucs](https://github.com/balazs-szucs) in [#5747](https://github.com/Stirling-Tools/Stirling-PDF/pull/5747)
- fixes for desktop SSO by [@Frooodle](https://github.com/Frooodle) in [#5751](https://github.com/Stirling-Tools/Stirling-PDF/pull/5751)
- large query reduction by [@Frooodle](https://github.com/Frooodle) in [#5754](https://github.com/Stirling-Tools/Stirling-PDF/pull/5754)
- fix(form-fill): fix hardcoded response by [@balazs-szucs](https://github.com/balazs-szucs) in [#5755](https://github.com/Stirling-Tools/Stirling-PDF/pull/5755)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.5.0...v2.5.1>

---
##### [\`2.5.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.5.0)

This is a big update with lots of new functionality and changes like Form fill and redaction/annotation improvements! Also several changes around the login session expiry
Special thanks to [@balazs-szucs](https://github.com/balazs-szucs), who put a lot of work into this release!

New functionality:

- Huge manual redaction changes with colour selection and improved UI
- Add attachment support with sidebar button for viewing attachments etc (Seen in viewer mode)
- FormFill tool with context and UI components for PDF form filling
- Desktop now edits files that have been openned instead of creating new copies
- Extra JWT settings to customise expiry times for desktop and browser
- Add/remove link support

Extra improvements:

- Text selection improvements within the viewer with custom actions
- Improved link handling and link location
- EmbedPDF 2.6.0 upgrade for several bug fixes
- Multiple fixes with the viewer, its functionality, and its export
- PDF Text editor cache / JSON size issues
- Enhanced JWT handling and refreshing for better session management without forced re-logins
- Improved annotation UI
- Files correctly open in the viewer automatically if only 1 file is opened
- Improved tool disable menu to be able to disable all remaining tools and docs

##### What's Changed

##### Enhancements

- feat(redaction): improve manual redaction with color selection and updated UI elements by [@balazs-szucs](https://github.com/balazs-szucs) in [#5679](https://github.com/Stirling-Tools/Stirling-PDF/pull/5679)
- feat(text-selection): implement text selection enhancement for double and triple-click actions by [@balazs-szucs](https://github.com/balazs-szucs) in [#5712](https://github.com/Stirling-Tools/Stirling-PDF/pull/5712)
- feat(linklayer): improve link handling with pdf-lib integration and add link toolbar, add delete link functionality by [@balazs-szucs](https://github.com/balazs-szucs) in [#5715](https://github.com/Stirling-Tools/Stirling-PDF/pull/5715)
- feat(attachments): add attachment support with sidebar and API integration by [@balazs-szucs](https://github.com/balazs-szucs) in [#5673](https://github.com/Stirling-Tools/Stirling-PDF/pull/5673)
- feat(form-fill): FormFill tool with context and UI components for PDF form filling by [@balazs-szucs](https://github.com/balazs-szucs) in [#5711](https://github.com/Stirling-Tools/Stirling-PDF/pull/5711)
- feat(frontend): Upgrade embedPDF to v2.6.0 and migrate to pdf-lib fork, fix attachment/bookmark panel by [@balazs-szucs](https://github.com/balazs-szucs) in [#5723](https://github.com/Stirling-Tools/Stirling-PDF/pull/5723)

##### Minor Enhancements

- Update translation by [@albanobattistella](https://github.com/albanobattistella) in [#5670](https://github.com/Stirling-Tools/Stirling-PDF/pull/5670)
- various  viewer pill fixes by [@reecebrowne](https://github.com/reecebrowne) in [#5714](https://github.com/Stirling-Tools/Stirling-PDF/pull/5714)
- Fix viewer export by [@reecebrowne](https://github.com/reecebrowne) in [#5713](https://github.com/Stirling-Tools/Stirling-PDF/pull/5713)
- fix tool disabling for docs and others by [@Frooodle](https://github.com/Frooodle) in [#5722](https://github.com/Stirling-Tools/Stirling-PDF/pull/5722)
- Preserve local paths for desktop saves by [@Frooodle](https://github.com/Frooodle) in [#5543](https://github.com/Stirling-Tools/Stirling-PDF/pull/5543)
- refactor(api): replace regex string literals with Pattern instances for improved performance and readability by [@balazs-szucs](https://github.com/balazs-szucs) in [#5680](https://github.com/Stirling-Tools/Stirling-PDF/pull/5680)
- refactor: fix homepage file upload path by [@Frooodle](https://github.com/Frooodle) in [#5738](https://github.com/Stirling-Tools/Stirling-PDF/pull/5738)
- PDF Text editor changes by [@Frooodle](https://github.com/Frooodle) in [#5726](https://github.com/Stirling-Tools/Stirling-PDF/pull/5726)
- fix\_env\_files\_for\_tauri by [@ConnorYoh](https://github.com/ConnorYoh) in [#5741](https://github.com/Stirling-Tools/Stirling-PDF/pull/5741)
- JWT enhancements for desktop by [@Frooodle](https://github.com/Frooodle) in [#5742](https://github.com/Stirling-Tools/Stirling-PDF/pull/5742)
- Chore/v2/improve annotation UI by [@reecebrowne](https://github.com/reecebrowne) in [#5724](https://github.com/Stirling-Tools/Stirling-PDF/pull/5724)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.6...v2.5.0>

---
##### [\`2.4.6\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.6)

Several bug fixes for the issues:

- License not always correctly loading due to cache issues
- public endpoints not always accessible when without JWT
- Language not always correctly taking the server's default
- Desktop issues for SAML SSO
- maxFileSize server setting not being handled correctly

As well as

- SSO cleanups
- Extra SSO logging for future issues
- markdown conversion now supports images

#### What's Changed

##### Breaking Changes

- fix(markdown): markdown conversion image handling and zip support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5677](https://github.com/Stirling-Tools/Stirling-PDF/pull/5677)

##### Enhancements

- Enhance SSO SAML in desktop app by [@jbrunton96](https://github.com/jbrunton96) in [#5705](https://github.com/Stirling-Tools/Stirling-PDF/pull/5705)

##### Minor Enhancements

- Fix maxFileSize environment variable support ([#5542](https://github.com/Stirling-Tools/Stirling-PDF/issues/5542)) by [@Eruis2579](https://github.com/Eruis2579) in [#5655](https://github.com/Stirling-Tools/Stirling-PDF/pull/5655)
- Bug fixing and debugs by [@Frooodle](https://github.com/Frooodle) in [#5704](https://github.com/Stirling-Tools/Stirling-PDF/pull/5704)
- fix(api): address potential backend resource leaks and improve frontend accessibility by [@balazs-szucs](https://github.com/balazs-szucs) in [#5678](https://github.com/Stirling-Tools/Stirling-PDF/pull/5678)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5668](https://github.com/Stirling-Tools/Stirling-PDF/pull/5668)
- build(deps): bump com.diffplug.spotless from 8.1.0 to 8.2.1 by [@dependabot](https://github.com/dependabot)\[bot] in [#5592](https://github.com/Stirling-Tools/Stirling-PDF/pull/5592)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.5...v2.4.6>

---
##### [\`2.4.5\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.5)

Desktop changes

- Windows desktop MSI to support headless installation with custom parameters to set up server URL and login mode, an example for this would be `msiexec /i "Stirling-PDF-windows-x86_64.msi
  " /qn STIRLING_SERVER_URL="http://192.168.1.53:2357/" STIRLING_LOCK_CONNECTION=1`

`STIRLING_SERVER_URL` auto sets the URL and `STIRLING_LOCK_CONNECTION=1` sets the connection mode to be ONLY self-host server, ensuring no mistaken connections to external servers. Please note this feature is currently in testing, if you have feedback or have tried it please let us know! (Even if it worked perfectly its good to know!)

- SSO UI changes
- support for login method restrictions in desktop
- remembers last entered selfhost URL for easy reconnection

General changes

- SSO functionality cleanups (a few more to come soon!)
- New strict mode for PDF/A conversion for issues were conversation isn't perfect
- redaction improvements

Bug fixes

- SSO auto login mode now working correctly

#### What's Changed

##### Enhancements

- feat:(pdfa-conversion) Implement Strict PDF/A Mode with Verification by [@balazs-szucs](https://github.com/balazs-szucs) in [#5663](https://github.com/Stirling-Tools/Stirling-PDF/pull/5663)
- feat(desktop): show and reuse last used server URL in Setup Wizard by [@Ludy87](https://github.com/Ludy87) in [#5659](https://github.com/Stirling-Tools/Stirling-PDF/pull/5659)
- feat(redaction): update to embedPDF v2.4.0 with unified redaction mode support by [@balazs-szucs](https://github.com/balazs-szucs) in [#5652](https://github.com/Stirling-Tools/Stirling-PDF/pull/5652)

##### Minor Enhancements

- Saml fix by [@Frooodle](https://github.com/Frooodle) in [#5651](https://github.com/Stirling-Tools/Stirling-PDF/pull/5651)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5618](https://github.com/Stirling-Tools/Stirling-PDF/pull/5618)
- fix(frontend): improve synonym search by [@Ludy87](https://github.com/Ludy87) in [#5639](https://github.com/Stirling-Tools/Stirling-PDF/pull/5639)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5666](https://github.com/Stirling-Tools/Stirling-PDF/pull/5666)
- Headless windows installer by [@Frooodle](https://github.com/Frooodle) in [#5664](https://github.com/Stirling-Tools/Stirling-PDF/pull/5664)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5669](https://github.com/Stirling-Tools/Stirling-PDF/pull/5669)
- SSO styling changes  by [@Frooodle](https://github.com/Frooodle) in [#5671](https://github.com/Stirling-Tools/Stirling-PDF/pull/5671)

##### Docker Updates

- build(deps): bump alpine from 3.23.2 to 3.23.3 in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5590](https://github.com/Stirling-Tools/Stirling-PDF/pull/5590)
- chore(ci): update GitHub Actions to latest stable versions by [@Ludy87](https://github.com/Ludy87) in [#5629](https://github.com/Stirling-Tools/Stirling-PDF/pull/5629)

##### Translation Changes

- chore(ci): improve language TOML check output with fixer guidance by [@Ludy87](https://github.com/Ludy87) in [#5638](https://github.com/Stirling-Tools/Stirling-PDF/pull/5638)
- chore(ci): refine pre-commit workflows, add TOML sorting by [@Ludy87](https://github.com/Ludy87) in [#5648](https://github.com/Stirling-Tools/Stirling-PDF/pull/5648)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5667](https://github.com/Stirling-Tools/Stirling-PDF/pull/5667)

##### Development Tools

- chore(vscode): replace deprecated Copilot extension with Copilot Chat by [@Ludy87](https://github.com/Ludy87) in [#5662](https://github.com/Stirling-Tools/Stirling-PDF/pull/5662)

##### Other Changes

- build(deps): bump io.swagger.core.v3:swagger-core-jakarta from 2.2.41 to 2.2.42 by [@dependabot](https://github.com/dependabot)\[bot] in [#5549](https://github.com/Stirling-Tools/Stirling-PDF/pull/5549)
- build(deps): bump org.postgresql:postgresql from 42.7.8 to 42.7.9 by [@dependabot](https://github.com/dependabot)\[bot] in [#5554](https://github.com/Stirling-Tools/Stirling-PDF/pull/5554)
- fix(build): define repositories to resolve test classpath dependencies by [@Ludy87](https://github.com/Ludy87) in [#5650](https://github.com/Stirling-Tools/Stirling-PDF/pull/5650)
- tauri comments by [@Frooodle](https://github.com/Frooodle) in [#5634](https://github.com/Stirling-Tools/Stirling-PDF/pull/5634)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.4...v2.4.5>

---
##### [\`2.4.4\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.4)

Quick fix for page editor bug causes multi-page selection issues

This release also contains

- Italian translations
- Bates stamping functionality to add page numbers
- Extract bookmarks API fix
- Diagnostics command in CLI for easy error reporting (grabs logs into a zip on request for you to view)

#### What's Changed

##### Enhancements

- feat(i18n): add missing compare placeholder and stamp label translations by [@Ludy87](https://github.com/Ludy87) in [#5636](https://github.com/Stirling-Tools/Stirling-PDF/pull/5636)

##### Minor Enhancements

- update to add optional Zero Padding to page numbers (Bates Stamping).… by [@mrober01](https://github.com/mrober01) in [#5612](https://github.com/Stirling-Tools/Stirling-PDF/pull/5612)
- Fix ClassCastException in extractBookmarks endpoint ([#5578](https://github.com/Stirling-Tools/Stirling-PDF/issues/5578)) by [@Eruis2579](https://github.com/Eruis2579) in [#5604](https://github.com/Stirling-Tools/Stirling-PDF/pull/5604)
- Bug/page editor additional fixes by [@reecebrowne](https://github.com/reecebrowne) in [#5660](https://github.com/Stirling-Tools/Stirling-PDF/pull/5660)
- Updated Italian translation by [@albanobattistella](https://github.com/albanobattistella) in [#5637](https://github.com/Stirling-Tools/Stirling-PDF/pull/5637)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5642](https://github.com/Stirling-Tools/Stirling-PDF/pull/5642)

##### Other Changes

- diagnostic script by [@Frooodle](https://github.com/Frooodle) in [#5646](https://github.com/Stirling-Tools/Stirling-PDF/pull/5646)

#### New Contributors

- [@mrober01](https://github.com/mrober01) made their first contribution in [#5612](https://github.com/Stirling-Tools/Stirling-PDF/pull/5612)
- [@Eruis2579](https://github.com/Eruis2579) made their first contribution in [#5604](https://github.com/Stirling-Tools/Stirling-PDF/pull/5604)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.3...v2.4.4>

---
##### [\`2.4.3\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.3)

Big desktop release today, full of fixes as well as other changes!

- Correctly show desktop and server versioning separately
- Support for watched folders to be recursive and multiple directories to be defined
- Desktop login expiry fix
- Desktop self-host connection improvements (self-sign fixes and others)
- Page editor performance and UI improvements
- frontend error screen appearing during SSO fix
- Desktop CORS fixes

#### What's Changed

##### Enhancements

- feat(settings): display frontend/backend versions and warn on client-server mismatch by [@Ludy87](https://github.com/Ludy87) in [#5571](https://github.com/Stirling-Tools/Stirling-PDF/pull/5571)
- Support multiple pipeline watch directories and configurable pipeline base path by [@Frooodle](https://github.com/Frooodle) in [#5545](https://github.com/Stirling-Tools/Stirling-PDF/pull/5545)

##### Minor Enhancements

- Stop type checking TypeScript files that won't be run by [@jbrunton96](https://github.com/jbrunton96) in [#5607](https://github.com/Stirling-Tools/Stirling-PDF/pull/5607)
- Fixed missing AuthnRequest bug by [@DarioGii](https://github.com/DarioGii) in [#5606](https://github.com/Stirling-Tools/Stirling-PDF/pull/5606)
- Update links to Docs by [@numanair](https://github.com/numanair) in [#5611](https://github.com/Stirling-Tools/Stirling-PDF/pull/5611)
- fix(frontend): prevent hydration errors in admin security form and improve autofill support by [@Ludy87](https://github.com/Ludy87) in [#5613](https://github.com/Stirling-Tools/Stirling-PDF/pull/5613)
- fix(auth): align token refresh handling with updated backend response by [@Ludy87](https://github.com/Ludy87) in [#5609](https://github.com/Stirling-Tools/Stirling-PDF/pull/5609)
- always allow tauri cors by [@Frooodle](https://github.com/Frooodle) in [#5616](https://github.com/Stirling-Tools/Stirling-PDF/pull/5616)
- Bug/pageeditor virtualisation by [@reecebrowne](https://github.com/reecebrowne) in [#5614](https://github.com/Stirling-Tools/Stirling-PDF/pull/5614)
- Stop attempting to refresh Spring tokens in desktop by [@Frooodle](https://github.com/Frooodle) in [#5610](https://github.com/Stirling-Tools/Stirling-PDF/pull/5610)

##### Other Changes

- Update Python dependencies in requirements files by [@Ludy87](https://github.com/Ludy87) in [#5627](https://github.com/Stirling-Tools/Stirling-PDF/pull/5627)
- Pin GitHub Actions and add runner hardening by [@Ludy87](https://github.com/Ludy87) in [#5628](https://github.com/Stirling-Tools/Stirling-PDF/pull/5628)

#### New Contributors

- [@numanair](https://github.com/numanair) made their first contribution in [#5611](https://github.com/Stirling-Tools/Stirling-PDF/pull/5611)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.2...v2.4.3>

---
##### [\`2.4.2\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.2)

This is a quick update including

- Fixes for Audit display failing under certain scenarios
- Fix for tools not being correctly disabled via disable-endpoints settings
- Text editor font rendering fixes
- New Variables for Stamp PDF feature!

#### What's Changed

##### Enhancements

- feat(stamp): add dynamic variables and templates for stamp text customization by [@balazs-szucs](https://github.com/balazs-szucs) in [#5546](https://github.com/Stirling-Tools/Stirling-PDF/pull/5546)

##### Minor Enhancements

- Fix tool disabling by [@Frooodle](https://github.com/Frooodle) in [#5585](https://github.com/Stirling-Tools/Stirling-PDF/pull/5585)
- Fix Audit & Usage Analytics Sections by [@DarioGii](https://github.com/DarioGii) in [#5586](https://github.com/Stirling-Tools/Stirling-PDF/pull/5586)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5538](https://github.com/Stirling-Tools/Stirling-PDF/pull/5538)

##### Other Changes

- fix: PDF Text Editor file open by [@bittoby](https://github.com/bittoby) in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

#### New Contributors

- [@bittoby](https://github.com/bittoby) made their first contribution in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.1...v2.4.2>

<!-- Release notes generated using configuration in .github/release.yml at v2.4.2 -->

#### What's Changed

##### Enhancements

- feat(stamp): add dynamic variables and templates for stamp text customization by [@balazs-szucs](https://github.com/balazs-szucs) in [#5546](https://github.com/Stirling-Tools/Stirling-PDF/pull/5546)

##### Minor Enhancements

- Fix tool disabling by [@Frooodle](https://github.com/Frooodle) in [#5585](https://github.com/Stirling-Tools/Stirling-PDF/pull/5585)
- Fix Audit & Usage Analytics Sections by [@DarioGii](https://github.com/DarioGii) in [#5586](https://github.com/Stirling-Tools/Stirling-PDF/pull/5586)
- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5538](https://github.com/Stirling-Tools/Stirling-PDF/pull/5538)

##### Other Changes

- fix: PDF Text Editor file open by [@bittoby](https://github.com/bittoby) in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

#### New Contributors

- [@bittoby](https://github.com/bittoby) made their first contribution in [#5572](https://github.com/Stirling-Tools/Stirling-PDF/pull/5572)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.1...v2.4.2>

---
##### [\`2.4.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.1)

Lots of bug fixes today!
Fix for HTTPS connection for desktop mode
Xframe option now in settings.yml and options menu for iframe support
Various other bug fixes and dependencies updates!
Mac desktop not starting correctly

#### What's Changed

##### Enhancements

- deps(frontend, tauri): update Tauri, Rust crates, and frontend dependencies by [@Ludy87](https://github.com/Ludy87) in [#5569](https://github.com/Stirling-Tools/Stirling-PDF/pull/5569)

##### Minor Enhancements

- pipeline fixes for naming issues  by [@Frooodle](https://github.com/Frooodle) in [#5570](https://github.com/Stirling-Tools/Stirling-PDF/pull/5570)
- xframe fix new by [@Frooodle](https://github.com/Frooodle) in [#5580](https://github.com/Stirling-Tools/Stirling-PDF/pull/5580)
- tool tags by [@Frooodle](https://github.com/Frooodle) in [#5568](https://github.com/Stirling-Tools/Stirling-PDF/pull/5568)
- deps(embedPDF): Bump codebase to embedPDF v2.3.0 and adjust codebase for new features by [@balazs-szucs](https://github.com/balazs-szucs) in [#5567](https://github.com/Stirling-Tools/Stirling-PDF/pull/5567)
- possible login fixes by [@Frooodle](https://github.com/Frooodle) in [#5444](https://github.com/Stirling-Tools/Stirling-PDF/pull/5444)
- :globe\_with\_meridians: Sync Translations + Update README Progress Table by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5581](https://github.com/Stirling-Tools/Stirling-PDF/pull/5581)

##### Docker Updates

- chore(ci): remove automated version sync job from build workflow by [@Ludy87](https://github.com/Ludy87) in [#5547](https://github.com/Stirling-Tools/Stirling-PDF/pull/5547)

##### Other Changes

- build(deps): bump pypdf from 6.6.0 to 6.6.2 in /testing/cucumber in the pip group across 1 directory by [@dependabot](https://github.com/dependabot)\[bot] in [#5577](https://github.com/Stirling-Tools/Stirling-PDF/pull/5577)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.4.0...v2.4.1>

---
##### [\`2.4.0\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.4.0)

Lots of new features in this release

- database backup management (Only for internal H2 database users)
- Full 2FA support with One-time-password auth code app support!
- Get info supporting better compliance verification
- PDF/X conversions
- automation tool now export into folder scan JSONs for folder automation

Bug fixes for

- Sign tool
- SSO user creation
- addStamp not handling timestamps

Thanks as always for all the fixes and work everyone has been doing! such as [@balazs-szucs](https://github.com/balazs-szucs) or the new bug fix from [@Joey4](https://github.com/Joey4) !
Special thanks to [@Ludy87](https://github.com/Ludy87) for introducing the awesome 2FA feature!

##### What's Changed

##### Enhancements

- feat(admin): add H2 database backup & restore management to admin UI by [@Ludy87](https://github.com/Ludy87) in [#5528](https://github.com/Stirling-Tools/Stirling-PDF/pull/5528)
- feat(frontend): enhance icon detection and update config navigation icon by [@Ludy87](https://github.com/Ludy87) in [#5524](https://github.com/Stirling-Tools/Stirling-PDF/pull/5524)
- feat(security): add TOTP-based multi-factor authentication with backend and UI support by [@Ludy87](https://github.com/Ludy87) in [#5417](https://github.com/Stirling-Tools/Stirling-PDF/pull/5417)
- feat(compliance): implement compliance verfication for get info on PDF by [@balazs-szucs](https://github.com/balazs-szucs) in [#5435](https://github.com/Stirling-Tools/Stirling-PDF/pull/5435)

##### Minor Enhancements

- 🤖 format everything with pre-commit by stirlingbot by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5530](https://github.com/Stirling-Tools/Stirling-PDF/pull/5530)
- fix(annotations): fix error 300 on sign frontend by [@balazs-szucs](https://github.com/balazs-szucs) in [#5536](https://github.com/Stirling-Tools/Stirling-PDF/pull/5536)
- Fix: Whitelist health endpoints in Security and Enterprise Filter + fix keep original commit by [@Frooodle](https://github.com/Frooodle) in [#5494](https://github.com/Stirling-Tools/Stirling-PDF/pull/5494)
- API cleanups by [@Frooodle](https://github.com/Frooodle) in [#5537](https://github.com/Stirling-Tools/Stirling-PDF/pull/5537)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5490](https://github.com/Stirling-Tools/Stirling-PDF/pull/5490)
- refactor(security): clean up SSO handling, harden URL parsing, and bump dependencies by [@Ludy87](https://github.com/Ludy87) in [#5523](https://github.com/Stirling-Tools/Stirling-PDF/pull/5523)
- fix(common): 🛡️CWE-681 & CWE-197 eliminate tainted numeric casts in size parsing by using BigDecimal with range guards by [@Ludy87](https://github.com/Ludy87) in [#5521](https://github.com/Stirling-Tools/Stirling-PDF/pull/5521)
- build(deps): bump nginx from `c083c37` to `b0f7830` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5500](https://github.com/Stirling-Tools/Stirling-PDF/pull/5500)
- build(deps): bump node from `f4769ca` to `e80397b` in /docker/frontend by [@dependabot](https://github.com/dependabot)\[bot] in [#5498](https://github.com/Stirling-Tools/Stirling-PDF/pull/5498)
- Fix V2 SSO user creation by [@Frooodle](https://github.com/Frooodle) in [#5079](https://github.com/Stirling-Tools/Stirling-PDF/pull/5079)
- removal of old java desktop + workspace change in tauri by [@Frooodle](https://github.com/Frooodle) in [#5459](https://github.com/Stirling-Tools/Stirling-PDF/pull/5459)
- Date and time placeholders in addTextStamp are not working by [@Joey4](https://github.com/Joey4) in [#5446](https://github.com/Stirling-Tools/Stirling-PDF/pull/5446)
- Update Backend 3rd Party Licenses by [@stirlingbot](https://github.com/stirlingbot)\[bot] in [#5539](https://github.com/Stirling-Tools/Stirling-PDF/pull/5539)
- \[V2] feat(convert): add PDF/X export option by [@balazs-szucs](https://github.com/balazs-szucs) in [#5285](https://github.com/Stirling-Tools/Stirling-PDF/pull/5285)
- V2 Show enterprise demo messages for audit and usage by [@Frooodle](https://github.com/Frooodle) in [#5226](https://github.com/Stirling-Tools/Stirling-PDF/pull/5226)
- Export folder scanning by [@Frooodle](https://github.com/Frooodle) in [#5544](https://github.com/Stirling-Tools/Stirling-PDF/pull/5544)
- translations by [@Frooodle](https://github.com/Frooodle) in [#5541](https://github.com/Stirling-Tools/Stirling-PDF/pull/5541)

##### Docker Updates

- Add sync-versions job to GitHub Actions workflow by [@Ludy87](https://github.com/Ludy87) in [#5228](https://github.com/Stirling-Tools/Stirling-PDF/pull/5228)
- build(deps): bump debian from `f668110` to `ed542b2` in /docker/embedded by [@dependabot](https://github.com/dependabot)\[bot] in [#5495](https://github.com/Stirling-Tools/Stirling-PDF/pull/5495)

##### Other Changes

- build(deps): bump logback from 1.5.23 to 1.5.24 by [@dependabot](https://github.com/dependabot)\[bot] in [#5468](https://github.com/Stirling-Tools/Stirling-PDF/pull/5468)
- build(deps): bump io.micrometer:micrometer-core from 1.16.1 to 1.16.2 by [@dependabot](https://github.com/dependabot)\[bot] in [#5466](https://github.com/Stirling-Tools/Stirling-PDF/pull/5466)

##### New Contributors

- [@Joey4](https://github.com/Joey4) made their first contribution in [#5446](https://github.com/Stirling-Tools/Stirling-PDF/pull/5446)

**Full Changelog**: <https://github.com/Stirling-Tools/Stirling-PDF/compare/v2.3.1...v2.4.0>

---
##### [\`2.3.1\`](https://github.com/Stirling-Tools/Stirling-PDF/releases/tag/v2.3.1)

Several bug fixes , including

- Scroll bar not showing correctly in settings menu
- Automate menus showing options correctly

and several other change,s such as SVG to PDF conversion and performance changes throughout app

##### What's Changed

##### Enhancements

- feat(conversion): add SVG to PDF conversion functionality by [@balazs-szucs](https://github.com/balazs-szucs) in [#5431](https://github.com/Stirling-Tools/Stirling-PDF/pull/5431)
- feat(pipeline): improve file processing with resource management and temp file handling by [@balazs-szucs](https://github.com/balazs-szucs) in [#54…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Back End Issues related to back-end development Front End Issues or pull requests related to front-end development Github Java Pull requests that update Java code size:XL This PR changes 500-999 lines ignoring generated files. Translation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants